我编写了一个应用程序来重命名服务器上的文件,但我希望它将log.txt
重命名为随机名称。这是我的代码:
int ftpopen(int argc, _TCHAR *argv[], int n)
{
HINTERNET hInternet;
HINTERNET hFtp;
hInternet = InternetOpen(NULL, INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
hFtp = InternetConnect(hInternet, L"cdata.comule.com", INTERNET_DEFAULT_FTP_PORT, L"a5563949", L"deepa123*", INTERNET_SERVICE_FTP, 0, 0);
if (FtpRenameFile(hFtp, L"log.txt", funsys))
{
MessageBox(NULL, L"Renamed Successful.", L"Title", NULL);
}
else
{
MessageBox(NULL, L"Renamed Failed.", L"Title", NULL);
}
}
funsys
是此函数之外的变量char*
。
它给了我这个错误:
4 IntelliSense: argument of type "char *" is incompatible with parameter of type "LPCWSTR"
请帮我解决此问题,我尝试将char*
转换为LPCWSTR
,但不起作用。
答案 0 :(得分:1)
由于UNICODE并不是你的第一部分,我建议你使用" FtpRenameFileA"功能而不是" FtpRenameFile"功能。这导致:
if (FtpRenameFileA(hFtp,"log.txt",funsys))
{
MessageBox(NULL, L"Renamed Successful.", L"Title", NULL);
}
else
{
MessageBox(NULL, L"Renamed Failed.", L"Title", NULL);
}