按照此处的说明尝试 PathFileExists:
http : //msdn.microsoft.com/en-us/library/windows/desktop/bb773584%28v=vs.85%29.aspx
会导致链接器错误 LNK2028 和 LNK2019。
这是我的代码:
char buffer1[] = "C:\\temp\\index.xml";
char *lpStr1;
lpStr1 = buffer1;
int retval;
retval = PathFileExistsA(lpStr1);
if (retval == 1 )
{
this->lbl_stat->Text = "File found!";
}else{
this->lbl_stat->Text = "File not found!";
}
Run Code Online (Sandbox Code Playgroud) 我有以下内容:
char confchar[MAX_PATH] = "\\dbstrings.cfg";
char buffer[MAX_PATH];
GetModuleFileNameA( NULL, buffer, MAX_PATH );
path_strip_filename(buffer);
Run Code Online (Sandbox Code Playgroud)
在这里,我得到了实际工作应用程序的路径.到目前为止这是有效的.我去拿
c:\users\xxx\documents\visual studio 2008\projects\secdb\debug\
Run Code Online (Sandbox Code Playgroud)
我使用strcat_s来组合这些:
char c_buffer[MAX_PATH*2] ;
strcat_s(c_buffer, buffer);
strcat_s(c_buffer, confchar);
Run Code Online (Sandbox Code Playgroud)
该字符串兼容用于标签:
System::String^ c_bufstr = gcnew String(c_buffer);
this->lbl_stat->Text = lbltxt;
Run Code Online (Sandbox Code Playgroud)
现在我得到类似的东西:
@1vc:\users\xxx\documents\visual studio 2008\projects\secdb\debug\dbstrings.cfg
Run Code Online (Sandbox Code Playgroud)
我也搞砸了那个MAX_PATH,用整数代替它等等.结果是一样的.那么我该怎么做才能在路径前删除这个@ 1v?