C ++ WinHttpSendRequest Eror C2664 - PullRequest
0 голосов
/ 11 июня 2019

Я пытаюсь создать программу, которая берет HTML-код с веб-сайта и требует, чтобы вы вошли на другой сайт. У меня проблема с WinHttpSendRequest. Я не ожидал ошибок со всеми из них.

  1. Код:

    len = (DWORD)strlen("username=aan1982&pswd=admin1234&sub_check=1&sub_login=");
    bResult = WinHttpSendRequest(hRequest,
        WINHTTP_NO_ADDITIONAL_HEADERS,
        0,
        "username=aan1982&pswd=admin1234&sub_check=1&sub_login=",
        len,
        len,
        0);
    

    Ошибка:

    C2664 'BOOL' WinHttpSendRequest(HINTERNET,LPCWSTR,DWORD,LPVOID,DWORD,DWORD,DWORD_PTR)': cannot convert argument 4 from 'const char [55]' to 'LPVOID'
    
  2. Код:

    LPVOID data = "username=aan1982&pswd=admin1234&sub_check=1&sub_login=";
    len =     (DWORD)strlen("username=aan1982&pswd=admin1234&sub_check=1&sub_login=");
    bResult = WinHttpSendRequest(hRequest,
        WINHTTP_NO_ADDITIONAL_HEADERS,
        0,
        data,
        len,
        len,
        0);
    

    Ошибка:

    C2440    'initializing': cannot convert from 'const char [55]' to 'LPVOID'  
    
  3. Код:

    len = (DWORD)strlen("username=aan1982&pswd=admin1234&sub_check=1&sub_login=");
    bResult = WinHttpSendRequest(hRequest,
        WINHTTP_NO_ADDITIONAL_HEADERS,
        0,
        (LPVOID)"username=aan1982&pswd=admin1234&sub_check=1&sub_login=",
        len,
        len,
        0);
    

    Ошибка:

    LNK1120 9 unresolved externals
    LNK2019 unresolved external symbol __imp__WinHttpCloseHandle@4 referenced in function "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl GetHTML(void)" (?GetHTML@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)  
    

    и еще 8, как у LNK2019, просто с другими

1 Ответ

0 голосов
/ 11 июня 2019
char    p[] = "username=aan1982&pswd=admin1234&sub_check=1&sub_login=";
LPVOID  ptr = static_cast<LPVOID>( p );
int     len = strlen( p );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...