У меня есть эта функция:
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
станд :: basic_string, класс
std :: allocator>, класс std :: basic_string, класс std :: allocator>, класс
станд :: basic_string, класс
std :: allocator>, класс std :: basic_string, класс std :: allocator>) «(? send @@ YAXV? $ basic_string @ DU? $ char_traits @ D @ std @@ V? $ allocator @ D @ 2 @@ станд @@ 000 @ Z)
упоминается в функции _main2) фатальная ошибка LNK1120: 1 не устранена
внешность
Я погуглил решение и нашел это:
Добавь это #pragma comment(lib, "wininet")
в свой код или добавьте wininet.lib в свойствах вашего проекта: Linker-> Input
Я делаю это и до сих пор не работает — я получаю идентичные ошибки, как и раньше.
Есть ли у вас какие-либо идеи, что я должен сделать для решения этой проблемы?
Я использую Visual Studio 2010 на Windows7.
Ваша неразрешенная внешняя ошибка символа для такой функции
void send(std::string log, std::string pas, std::string ser, std::string plik)
но функция, которую вы показали нам, такова
void send(char* log, char* pas, char* ser, char* plik)
я мог бы Угадай что вы написали первую версию в своем заголовочном файле, а вторую версию в исходном файле. Вы должны быть последовательны, одна версия или другая, а не обе.
Других решений пока нет …