1

Windows 7でVisual Studio 2010を使用しています。次の機能があります。

void send(char* log, char* pas, char* ser, char* plik)
{   
    HINTERNET hInternet;
    HINTERNET hFtpSession;
    hInternet = InternetOpenA(NULL,INTERNET_OPEN_TYPE_DIRECT,NULL,NULL,0);
    hFtpSession = InternetConnectA(hInternet,ser,INTERNET_DEFAULT_FTP_PORT,log,pas, INTERNET_SERVICE_FTP, 0,0 );
    FtpPutFileA(hFtpSession, "WMM.txt", plik, FTP_TRANSFER_TYPE_BINARY, 0);
}

うまくいきませんでした:

  1. エラー LNK2019: 未解決の外部シンボル "void __cdecl send(class std::basic_string<char,struct std::char_traits,class std::allocator >,class std::basic_string<char,struct std::char_traits,class std::アロケータ >,class std::basic_string<char,struct std::char_traits,class std::allocator >,class std::basic_string<char,struct std::char_traits,class std::allocator >)" (?send@ @YAXV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@000@Z) 関数 _main で参照

2) 致命的なエラー LNK1120: 1 つの未解決の外観

私は解決策をグーグルで検索し、これを見つけました:これ#pragma comment(lib, "wininet")をコードに追加するか、プロジェクトのプロパティにwininet.libを追加します:Linker->Input

私はこれを行ってもまだ機能していません - 以前と同じエラーが発生します。この問題を解決するために何をすべきか分かりましたか?

4

1 に答える 1

1

未解決の外部シンボル エラーは、このような関数に対するものです

void send(std::string log, std::string pas, std::string ser, std::string plik)

しかし、あなたが私たちに示した機能はこのようなものです

void send(char* log, char* pas, char* ser, char* plik)

ヘッダー ファイルに最初のバージョンを書き、ソース ファイルに 2 番目のバージョンを書いたと思います。両方ではなく、どちらか一方のバージョンで一貫性を保つ必要があります。

于 2013-04-15T19:07:46.650 に答える