WCharToMByte(a, b, MAX_PATH);

在一个按钮控件里调用可执行文件exe
由于GetCurrentPath函数接受参数是Tchar类型(void WINAPI GetCurrentPath(TCHARszCurrentAppPath)),所以要转化成string来用WinExec调用。
WCHAR a[MAX_PATH];
//TCHAR a[256] = { 0 };
GetCurrentPath(a);
//char b[256] = { 0 };
char b[MAX_PATH];
WCharToMByte(a, b, MAX_PATH);
char  szFileName[256] = { 0 };
sprintf(szFileName, "%sATest.exe", b);
WinExec(szFileName, SW_SHOW);
或者这样:
TCHAR a[256] = { 0 };
GetCurrentPath(a);
char b[256] = { 0 };
WCharToMByte(a, b, 256);
char  szFileName[256] = { 0 };
sprintf(szFileName, "%sAlgTest.exe",b);
WinExec(szFileName, SW_SHOW);

 
 
 
  
 

不转化的化不报错,但是运行不了:

TCHAR a[256] = { 0 };
GetCurrentPath(a);
char  szFileName[256] = { 0 };
sprintf(szFileName, "%sAlgTest.exe",a);

WinExec(szFileName, SW_SHOW);

这样不行!!!!!!!!!!!

WCharToMByte函数在此有介绍:https://blog.csdn.net/liangjisheng/article/details/72575219?locationNum=5&fps=1
WinExec函数在此  https://blog.csdn.net/gordonyui/article/details/6913915


猜你喜欢

转载自blog.csdn.net/hk121/article/details/81035755
B
a^b
A/B
A*B