我在练习DLL注入 ,下面是有关路径的问题
下面的代码是可以运行的 TCHAR tcPath[MAX_PATH];
TCHAR *lastPath = "dll.dll";
TCHAR *fullPath; GetModuleFileName(NULL, (LPTSTR)&tcPath, MAX_PATH);
for (size_t i = _tcslen(tcPath); i; i--)
{
if (tcPath[i-1] == _T('\\') || tcPath[i-1] == _T(':'))
{
tcPath[i] = 0;
break;
}
} fullPath = strcat( tcPath, lastPath );
CString msg("");
msg.Format( "%s", fullPath );
MessageBox( msg );现在我想把上面封装成一个函数
在其他地方调用传入最后的路径 就可以得到全路径的函数static char* MakeFullPath( TCHAR *inputPath );
static BOOL MakeFullPath( TCHAR *fullPath, TCHAR *inputPath );这是我写的 但怎么样都不行
还有调用要怎么传入实参我写来写去都出去感觉对指针 引用 还有字符串的概念不熟悉;
下面的代码是可以运行的 TCHAR tcPath[MAX_PATH];
TCHAR *lastPath = "dll.dll";
TCHAR *fullPath; GetModuleFileName(NULL, (LPTSTR)&tcPath, MAX_PATH);
for (size_t i = _tcslen(tcPath); i; i--)
{
if (tcPath[i-1] == _T('\\') || tcPath[i-1] == _T(':'))
{
tcPath[i] = 0;
break;
}
} fullPath = strcat( tcPath, lastPath );
CString msg("");
msg.Format( "%s", fullPath );
MessageBox( msg );现在我想把上面封装成一个函数
在其他地方调用传入最后的路径 就可以得到全路径的函数static char* MakeFullPath( TCHAR *inputPath );
static BOOL MakeFullPath( TCHAR *fullPath, TCHAR *inputPath );这是我写的 但怎么样都不行
还有调用要怎么传入实参我写来写去都出去感觉对指针 引用 还有字符串的概念不熟悉;
解决方案 »
- VC中datetimepicker的问题
- error C2146: syntax error : missing ; before identifier lpddsprimary
- 我录音里面有基座麦克风,内置麦克风,麦克风插口,请问怎样控制这些
- 关于Windows字符映射表工具
- 如何取得列表的标题文字,用m_ctrlItem.GetColumn(i, &lvc)总是返回0
- 请教:坐标转换问题?
- VC++中哪里有制作安装程序的工具??
- 问题不难,困扰很久,在线等待,当时给分
- 怎样结束循环体?
- 如何编写实现站点爬行的程序?急!急!急!
- VC 串口通讯遇到的问题
- 关于EnumChildWindows问题
static BOOL MakeFullPath(TCHAR* fullPath);函数体改成:
BOOL MakeFullPath(TCHAR* fullPath)
{
TCHAR tcPath[MAX_PATH];
TCHAR *lastPath = "dll.dll";
GetModuleFileName(NULL, (LPTSTR)&tcPath, MAX_PATH);
for (size_t i = _tcslen(tcPath); i; i--)
{
if (tcPath[i-1] == _T('\\') || tcPath[i-1] == _T(':'))
{
tcPath[i] = 0;
break;
}
} strcat( tcPath, lastPath );
strcpy(fullPath,tcPath);
CString msg("");
msg.Format( "%s", fullPath );
::MessageBox(NULL,msg.GetBuffer(msg.GetLength()),_T("消息"),MB_OK);
msg.ReleaseBuffer();
return TRUE;
}调用代码如下:
TCHAR szPath[MAX_PATH]={0};
MakeFullPath(szPath);