Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
BTR
8 / 8 / 1
Регистрация: 01.11.2010
Сообщений: 157
#1

Выход в интернет - C++

29.03.2011, 21:12. Просмотров 1213. Ответов 1
Метки нет (Все метки)

Всем привет столкнулся с такой проблемой, начал создавать консольную программку использующую интернет и вроде бы ошибок нет, в смысле синтаксических, а компилятор не пойму на что жалуется. Вот процесс компиляции:


1>------ Построение начато: проект: testInet, Конфигурация: Debug Win32 ------
1>Построение начато 29.03.2011 21:07:40.
1>InitializeBuildStatus:
1> Обращение к "Debug\testInet.unsuccessfulbuild".
1>ClCompile:
1> Для всех выходных данных обновления не требуется.
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__InternetReadFile@16 в функции _main
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__HttpSendRequestA@20 в функции _main
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__HttpOpenRequestA@32 в функции _main
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__InternetConnectA@32 в функции _main
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__InternetCloseHandle@4 в функции _main
1>main.obj : error LNK2019: ссылка на неразрешенный внешний символ __imp__InternetOpenA@20 в функции _main
1>c:\documents and settings\андрей\мои документы\visual studio 2010\Projects\testInet\Debug\testInet.exe : fatal error LNK1120: 6 неразрешенных внешних элементов
1>
1>СБОЙ построения.
1>
1>Затраченное время: 00:00:00.18
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 ==========


А вот сам код:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#include <windows.h>
#include <wininet.h>
#include <stdlib.h>
#include <fstream>
#include <iostream>
using namespace std;
 
int main(int argc, char* argv[])
{
    bool ok = false;
 
    HINTERNET hInet = InternetOpen("MyDownloadMaster", INTERNET_OPEN_TYPE_PRECONFIG, NULL, NULL, 0);
    if(hInet == NULL) {
        cout << "ППЦ" ;
        InternetCloseHandle(hInet);
        system("pause >> void");
        exit(-1);
    }
 
    HINTERNET hConnect = InternetConnect(hInet, "www.phpforum.ru", INTERNET_DEFAULT_HTTP_PORT, NULL, NULL, INTERNET_SERVICE_HTTP, 0, 1);
    if(hConnect == NULL) {
        cout << "Не удалось подключиться к интернету";
        InternetCloseHandle(hConnect);
        InternetCloseHandle(hInet);
        system("pause >> void");
        exit(-1);
    }
 
    HINTERNET query = HttpOpenRequest(hConnect, "GET", "index.php", NULL, NULL, 0, INTERNET_FLAG_KEEP_CONNECTION, 0);
    if(query == NULL) {
        cout << "Не удалось найти сервер, попробуйте указать другой.";
        InternetCloseHandle(query);
        InternetCloseHandle(hConnect);
        InternetCloseHandle(hInet);
        system("pause >> void");
        exit(-1);
 
    }
 
    bool result = HttpSendRequest(query, NULL, 0 , NULL, 0);
 
    if(result) {
    
          // создаём выходной файл
     ofstream fnews("news.html", ios::app);
     if (fnews.is_open()) for (;;) {
     // читаем данные
     char  szData[1024];
     DWORD dwBytesRead;
     BOOL bRead = InternetReadFile(query, szData, sizeof(szData)-1, &dwBytesRead);
 
                             // выход из цикла при ошибке или завершении
                        if (bRead == FALSE  ||  dwBytesRead == 0)
                            break;
 
                        // сохраняем результат
                        szData[dwBytesRead] = 0;
                        fnews << szData;
                        
                        ok = true;
                    }
 
 
}
        // закрываем запрос
        InternetCloseHandle(query);
         
        // закрываем сессию
        InternetCloseHandle(hConnect);
    
        // закрываем WinInet
        InternetCloseHandle(hInet);
 
 
 
 
    if (ok)
        system("start news.html");
 
    return 0;
}
Заранее всех благодарю
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.03.2011, 21:12     Выход в интернет
Посмотрите здесь:

Выход из <do-while> - C++
Вот цикл: int Ni1=1, i1=1; float Sinc1; do { Sinc1=pow(flX,i1)/(i1+2); S1=S1+Sinc1; i1=i1+4; Ni1=Ni1+2; ...

Выход из программы - C++
Доброго времени суток, это опять я:) Дописал программу, которая вычисляет произведение матрицы на вектор. Фишка программы заключается в...

Выход из лабиринта - C++
Всем привет, возник вопрос по поводу лабиринта. Посмотрев форум не нашел такого же задания. Суть - написать программу, с помощью которой...

Корректный выход - C++
Доброго времени суток! Пытаюсь разобраться с fork(), а точнее с корректным выходом из fork'нутого процесса. Есть стандартный код работы с...

Выход из цикла - C++
Ув. программисты я пишу крестики-нолики, но возникла некоторая проблема с циклами! for (t=0;t&lt;100;t++) { for...

Выход из подпрограммы - C++
Я делаю обход АВЛ дерева, сравнивая элементы, для проверки эквивалентности этих деревьев. При обходе подпрограмма обращается сама к...

С++ Выход из цикла - C++
Есть цикл, написанный в дополнительной функции. Нужно вывести сумму нескольких введенных чисел, если подходящей суммы нет,то вывести...

Выход из программы - C++
Возможно, глупый вопрос, но как сделать выход из программы? Хочется сделать закрытие программы не из главной функции. К примеру: ...

Выход по ESC - C++
Приветствую вас уважаемые &quot;чатлане&quot;! .Пишет вам &quot;пацак&quot;. Я начал с Borland C++ 3.1. Наверное все очень просто на самом деле, но как и у...

Выход из программы - C++
Доброго времени суток полуночникам! Есть код, и мне нужно если на if(f1==0 &amp;&amp; s1==0) ,будет значение тру что бы вышло из программы...

Выход за диапозон... - C++
В #include &lt;iostream&gt; #include &lt;algorithm&gt; #include &lt;numeric&gt; #include &lt;time.h&gt; using namespace std; ...

Выход из игры - C++
Как сделать выход из игры? Вот код: void MyKeyboard(unsigned char key, int a, int b) { switch(key) { case 'w'...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DeadRipper
64 / 70 / 3
Регистрация: 25.06.2009
Сообщений: 244
29.03.2011, 23:05     Выход в интернет #2
"ссылка на неразрешенный внешний символ __imp__InternetReadFile@16 "

означает что не подключена библиотека с этой функцией, по всей видимости это wininet.lib

надо ее включить в начале кода
C++
1
#pragma comment(lib,"wininet.lib")
когда включаете неизвестные вам хедеры
по типу wininet.h
нужно убедиться не тащат ли они за собой библиотеку, в основном названия у них такие же
только с .lib на конце
Yandex
Объявления
29.03.2011, 23:05     Выход в интернет
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru