powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Ftp через http прокси
2 сообщений из 2, страница 1 из 1
Ftp через http прокси
    #33777836
a_shar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
народ помогите!!
надо коннектится к ftp через проксю
вот код
Код: plaintext
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.
void __fastcall TForm1::Button1Click(TObject *Sender)
{
HINTERNET hInet= 0 ;
DWORD dwContext= 0 ;

hInet = InternetOpen(
  "",
  INTERNET_OPEN_TYPE_PROXY,
//  INTERNET_OPEN_TYPE_PRECONFIG,
//  "kocherin",
//  "433302",
  "ftp=ftp://proxy:8080 http=http://proxy:8080",
  "<local>",
   0 
);
  if (!hInet) {
	ShowMessage ("Fuck");
  }

hInet = InternetConnect(
  hInet,
  "ftp://ftp.microsoft.com/",
  INTERNET_DEFAULT_FTP_PORT,
  "anonymous",
  "aaa@mail.ru",
  INTERNET_SERVICE_FTP,
  INTERNET_FLAG_PASSIVE,
  dwContext);

  if (hInet) {
//	 MessageBox(Handle,"OK","",MB_OK);
	if (!DisplayFtpDir(
						   Handle,
						   hInet,
						   INTERNET_FLAG_HYPERLINK,
						   (int)list->Handle ))
		MessageBox(Handle,"Bad","",MB_OK);
  }
  else
  {
		MessageBox(Handle,"No connection","",MB_OK);
  }

}
в итоге вываливается мессага No connection. Подскажите может кто с етим сталкивался, что не верно? среда borland developer studio 2006
...
Рейтинг: 0 / 0
Ftp через http прокси
    #33779032
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во первых, не стоит использовать один и тот же хендля для InternetOpen и InternetConnect. Во вторых ошибки можно расшифровывать:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
void ShowInternetError() {
	char InternetErrorMessage[ 1024 ];
	DWORD InternetError, InternetErrorMessageLength;
	DWORD SystemError;
	LPVOID lpMsgBuf;

	SystemError = GetLastError();
	if(SystemError == ERROR_INTERNET_EXTENDED_ERROR) {
		InternetErrorMessageLength = sizeof(InternetErrorMessage);
		InternetGetLastResponseInfo(&InternetError, InternetErrorMessage, &InternetErrorMessageLength);
		InternetErrorMessage[InternetErrorMessageLength]= 0 ;
		MessageBox(Handle, "internet error", InternetErrorMessage, MB_OK);
	} else {
		FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_IGNORE_INSERTS |
				FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_FROM_HMODULE,
			GetModuleHandle("wininet"), ErrorCode,
			MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
			(LPTSTR) &lpMsgBuf,	 0 , NULL );

		MessageBox(Handle, "system error", lpMsgBuf, MB_OK);
		LocalFree( lpMsgBuf );
	}
	return FALSE;
}
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Ftp через http прокси
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]