Здравствуйте, Подскажите как передать куки на сервер.... на Delphi 10.. т.е Нужно Передать куки на сервер и отправить get запрос.. что бы авторизоваться через кукисы...
AURL: TIdURI.Create('host.ru'); IdCookieManager.AddCookie('JSESSIONID=gfgjfgjfgfgnbnvnbnfg', AURL ); IdHtp1.Get('http://host.ru/'); Попробовал так не выходит, не передает кукисы... побывал и другие варианты, ничего не проходит...
IdHTTP1.Request.CustomHeaders.Add('Cookie:JSESSIONID=gfgjfgjfgfgn bnvnbnfg'); И так тоже? З.Ы. IdHttp.AllowCookie := false;
Получилось но это не то, он должен передать куки те которые нужно, после принять те которые дает сайт... надеюсь не запутал в 7-ой я делал это так IdCookieManager.AddCookie('uid=parametr','host.ru'); IdCookieManagerAddCookie('JSESSION='+edt10.text+'','host.ru'); IdHTtP1.CookieManager.CookieCollection.Items[0].Path := '/'; IdHTtP1.CookieManager.CookieCollection.Items[1].Path := '/';
Еще вопрос, есть IdHTtP1, при нажатии по кнопке будет выполняться строка типа: dhtp1.Get('http://ya.ru') ; idhtp1.Get('http://ya.ru') ; idhtp1.Get('http://ya.ru') ; .... итд Как сделать так что бы программа отправляла запросы в несколько потоков, TThread не предлагать, либо если нет выхода и нужно юзать TThread то помогите с кодом плиз...
можно так: (Delphi 2010 и выше) Code: uses Classes; //... TThread.CreateAnonimusThread(procedure begin AIdHTTP.Get('http://ya.ru') end);
Спасибо с этим разобрался... Столкнулся еще с одной проблемой, обработчик исключений, вот я привел пример для определенного запроса, подскажите пожалуйста как записать так что бы при каждой отправке запроса проверялось на ошибку.. (т.е есть много кнопок на форме и все отправляют какие то запросы, нужно записать куда то один раз что бы ошибок не было) надеюсь я не кого не запутал... сразу извинюсь за слегка простые вопросы... Спасибо try idhttp1.get('http://ya.ru'); except on E: Exception do SHOWMESSAGE('You error ' +E.Message); end;
Code: function Reques(AURL: string; PostData: TStrings = nil): string; begin try if Assigned(PostData) then Result := FIdHTTP.Post(AURL, PostData) else Result := FIdHTTP.Get(AURL); except on E: EIdException do ShowMessage('Load Error: ' + E.Message); end; end;
Нужна помощь! Предмет работы- биржевая информация. Нужно экспортировать некоторые данные из программы (торгового терминала) и настроить их отображение на сайте. Должно получиться что-то подобное: Спреды: http://www.forexpros.ru/brokers/compare-spreads-eur-usd Котировки: http://www.forexpros.ru/brokers/compare-quotes-eur-usd Как я понимаю, нужно разбираться в этом: API (Application Programming Interface) DDE (Dynamic Data Exchange). Также один опытнчй человек написал (цитирую дословно) что: Это традиционное программирование для публикации базы данных на WEB-узел. Например, использование ASP-сценария, извлекающего информацию из базы данных и помещение HTML-документ. Формирование ASP-страницы, связанной с базой данных, проходит в 3 этапа. 1. Создание базы данных на основе MS Access; 2. На своем WEB-сервере создать DSN. Это даст возможность сценариям находить базу данных и подключаться к ней. 3. Написать ASP-сценарий, использующий технологию ADO для создания объектов RECORDSET и выдаче базе данных требуемых инструкций SQL Кто знает как? Skype: papakarloegor
Как определить что версия windows vista или seven ? Если версия Windows не семерка и не Vista то возвращать False.
Всмысле входил? Семрку и висту определять не приходилось, определял с помощью dwWindowsMajor(Minor)Version...
PHP: function CheckWindowsSeven: Integer; var osVerInfo: TOSVersionInfo; begin osVerInfo.dwOSVersionInfoSize := SizeOf(TOSVersionInfo); if GetVersionEx(osVerInfo) then begin with osVerInfo do begin if (dwMajorVersion = 6) and (dwMinorVersion = 1) and (dwBuildNumber >= 7600) then Result := 1 else Result := 0; end; end else Result := -1 end; procedure TForm1.Button1Click(Sender: TObject); begin case CheckWindowsSeven of - 1: Application.MessageBox('Не удалось определить версию Windows', ''); 0: Application.MessageBox('Windows Vista или ниже', ''); 1: Application.MessageBox('Windows 7 или Windows Server 2008 R2', ''); end; end;
Спасибо) Не подскажите как открыть определенное приложения через Delphi имея полный путь до программы через ShellExecute, а потом его закрыть. Открывать как нашел. Через Code: ShellExecute(AutoRunners.Handle,'open','C:\1.exe',nil,nil,SW_Normal);
Rastamanka, Code: uses Tlhelp32; ... function KillTask(ExeFileName:string):integer; const PROCESS_TERMINATE=$0001; var Co:BOOL; FS:THandle; FP:TProcessEntry32; begin result:=0; FS:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); FP.dwSize:=Sizeof(FP); Co:=Process32First(FS,FP); while integer(Co) <> 0 do begin if ((UpperCase(ExtractFileName(FP.szExeFile))=UpperCase(ExeFileName)) or (UpperCase(FP.szExeFile)=UpperCase(ExeFileName))) then Result:=Integer(TerminateProcess(OpenProcess(PROCESS_TERMINATE, BOOL(0), FP.th32ProcessID),0)); Co:=Process32Next(FS,FP); end; CloseHandle(FS); end;