使用变量会产生错误

时间:2014-06-04 14:32:57

标签: c++ variables

我编写了一个应用程序来重命名服务器上的文件,但我希望它将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,但不起作用。

1 个答案:

答案 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);
}