[ Delphi / Pascal ] — начинающим: задаем вопросы (архивная - 2015)

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by banned, 6 May 2007.

Thread Status:
Not open for further replies.
  1. Fake22

    Fake22 New Member

    Joined:
    4 May 2013
    Messages:
    73
    Likes Received:
    0
    Reputations:
    0

    Перезалей плиз=)
     
  2. Protocoler

    Protocoler Elder - Старейшина

    Joined:
    10 Oct 2012
    Messages:
    51
    Likes Received:
    54
    Reputations:
    81
    Какой модуль нужно подключить чтобы стала доступна функция WindowPoint ?
     
  3. winlogon.exe

    winlogon.exe Active Member

    Joined:
    5 Jun 2009
    Messages:
    31
    Likes Received:
    129
    Reputations:
    13
    Как получить в indy URL на который меня редиректнуло?
     
  4. xophet

    xophet Member

    Joined:
    16 Apr 2011
    Messages:
    617
    Likes Received:
    49
    Reputations:
    5
    IdHTTP.Response.Location
     
  5. mironich

    mironich Elder - Старейшина

    Joined:
    27 Feb 2011
    Messages:
    733
    Likes Received:
    73
    Reputations:
    19
    Для ВК API?
     
  6. xophet

    xophet Member

    Joined:
    16 Apr 2011
    Messages:
    617
    Likes Received:
    49
    Reputations:
    5
    И в чем проблема? есть ф-ии Pos, Copy, Del читаем как они работают и парсим
    Например так
    Code:
    function ParseToken(Redirect:string): string;
    var
      a, b: integer;
    begin
      Result := '';
      if (Redirect = '') then
        Exit;
        a := Pos('access_token=', LowerCase(Redirect));
        if a = 0 then
          Exit
        else
          a := a + 13;//Length('access_token=');
      Redirect := Copy(Redirect, a, Length(Redirect) - a + 1);
      b := Pos('&expires_in', LowerCase(Redirect));
      if b > 0 then
        Result := Copy(Redirect, 1, b - 1);
    end;
     
    #9446 xophet, 15 Jul 2013
    Last edited: 15 Jul 2013
  7. Грабитель

    Joined:
    5 Mar 2013
    Messages:
    196
    Likes Received:
    12
    Reputations:
    -7
    Знатоки подскажите, можно ли через API функции работы с файлами удалить из файла самую первую строку (не сделать пустой, а именно удалить) ?
    используя AssignFile и прочие API функции.
    Файл большой, несколько гигов, возможно ли это без изврата? т.е. без перезаписи в другой файл, и без циклического чтения всех строк, т.к. их там много, и читаться они все будут долго.
    Буду признателен за пример, если такое реализовать вообще возможно технически.
     
  8. Protocoler

    Protocoler Elder - Старейшина

    Joined:
    10 Oct 2012
    Messages:
    51
    Likes Received:
    54
    Reputations:
    81
    Нужно подключится к POP3 серверу по SSL .
    Везде написано что требуется лишь подключить модуль. Подключил. Пытаюсь подключиться к серверу под SSL портом... ничего не выходит (

    Использую Synapse, модуль POP3send .
     
  9. Sifon110

    Sifon110 New Member

    Joined:
    13 Mar 2011
    Messages:
    34
    Likes Received:
    1
    Reputations:
    0
    Подскажите, можно ли как-то форму заставить работать через proxy? То есть что бы все что на ней лежало, все компоненты (ну естеcственно только те, которые связаны с сетью) работали через этот заданный мною прокси сервер.
     
  10. Она

    Она New Member

    Joined:
    13 Aug 2013
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Ребят, только зарегистрировалась. Извините, если что то не так напишу) У меня такой вопрос. подскажите, можно ли взломать почту майл.ру ????
     
  11. FunOfGun

    FunOfGun Elder - Старейшина

    Joined:
    5 Sep 2012
    Messages:
    388
    Likes Received:
    72
    Reputations:
    124
    да, можно
     
  12. MASM

    MASM New Member

    Joined:
    8 Jun 2011
    Messages:
    22
    Likes Received:
    0
    Reputations:
    0
    Я перехватываю функцию ZwSetValueKey. Как получить путь, имя и значение которую пытаются писать в реестр? [ Delphi 7 ] :confused:

    function NewZwSetValueKey(KeyHandle : HANDLE; ValueName : PUNICODE_STRING; TitleIndex : ULONG; Type_ : ULONG;
    Data : PVOID; DataSize : ULONG): NTSTATUS; stdcall;
    begin
    //========///
    TZwSetValueKey(KeyHandle, ValueName, TitleIndex, Type_ , Data, DataSize);
    //========///
    end;
     
  13. FunOfGun

    FunOfGun Elder - Старейшина

    Joined:
    5 Sep 2012
    Messages:
    388
    Likes Received:
    72
    Reputations:
    124
    2MASM, рановато ты видать взялся за это, взгляни на параметры NewZwSetValueKey, там все есть
     
  14. MASM

    MASM New Member

    Joined:
    8 Jun 2011
    Messages:
    22
    Likes Received:
    0
    Reputations:
    0
    Да знаю что есть но не знаю как вытащит их. Думаю они хранятся тут Data : PVOID; как вытащить ?
     
  15. FunOfGun

    FunOfGun Elder - Старейшина

    Joined:
    5 Sep 2012
    Messages:
    388
    Likes Received:
    72
    Reputations:
    124
    имя и значение располагаются соответственно в valuename и data, при чем параметр type_ определяет тип данных в data, а вот путь хз как вытащить, в явном виде он не приходит сюда, есть только keyhendle
     
  16. MASM

    MASM New Member

    Joined:
    8 Jun 2011
    Messages:
    22
    Likes Received:
    0
    Reputations:
    0
    Да в valuename хранится имя. А как получить значение и раздел ?
     
  17. MASM

    MASM New Member

    Joined:
    8 Jun 2011
    Messages:
    22
    Likes Received:
    0
    Reputations:
    0
    Мне нужно получить вот такой путь: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
     
  18. Fake22

    Fake22 New Member

    Joined:
    4 May 2013
    Messages:
    73
    Likes Received:
    0
    Reputations:
    0

    Вот http://avtuh.ru/2010/08/06/delphi-indy-ispolzovanie-proksi-http-i-socks.html все есть )
     
  19. Fake22

    Fake22 New Member

    Joined:
    4 May 2013
    Messages:
    73
    Likes Received:
    0
    Reputations:
    0
    А вот а пример работы webbrower через proxy




    var
    Form1: TForm1;
    i:Integer;

    implementation

    {$R *.dfm}

    procedure proxy(text:string);
    var PIInfo: PInternetProxyInfo;
    begin
    New(PIInfo);
    PIInfo^.dwAccessType := INTERNET_OPEN_TYPE_PROXY;
    PIInfo^.lpszProxy:=(PAnsiChar(text));
    PIInfo^.lpszProxyBypass := PChar('');
    UrlMkSetSessionOption(INTERNET_OPTION_PROXY, piinfo, SizeOf(Internet_Proxy_Info), 0);
    Dispose(PIInfo);
    end;

    procedure DeleteIECache;
    var
    lpEntryInfo: PInternetCacheEntryInfo;
    hCacheDir: LongWord;
    dwEntrySize: LongWord;
    begin
    dwEntrySize := 0;
    FindFirstUrlCacheEntry(nil, TInternetCacheEntryInfo(nil^), dwEntrySize);
    GetMem(lpEntryInfo, dwEntrySize);
    if dwEntrySize > 0 then lpEntryInfo^.dwStructSize := dwEntrySize;
    hCacheDir := FindFirstUrlCacheEntry(nil, lpEntryInfo^, dwEntrySize);
    if hCacheDir <> 0 then
    begin
    repeat
    DeleteUrlCacheEntry(lpEntryInfo^.lpszSourceUrlName);
    FreeMem(lpEntryInfo, dwEntrySize);
    dwEntrySize := 0;
    FindNextUrlCacheEntry(hCacheDir, TInternetCacheEntryInfo(nil^), dwEntrySize);
    GetMem(lpEntryInfo, dwEntrySize);
    if dwEntrySize > 0 then lpEntryInfo^.dwStructSize := dwEntrySize;
    until not FindNextUrlCacheEntry(hCacheDir, lpEntryInfo^, dwEntrySize);
    end;
    FreeMem(lpEntryInfo, dwEntrySize);
    FindCloseUrlCache(hCacheDir);
    end;

    procedure EndBrowserSession;
    begin
    InternetSetOption(nil, INTERNET_OPTION_END_BROWSER_SESSION, nil, 0);
    end;

    procedure TForm1.BitBtn3Click(Sender: TObject);
    begin
    TabSheet1.Show;
    Timer1.Interval:=StrToInt(SpinEdit1.Text)*60000;//устанавливаем таймаут смены прокси
    Timer1.Enabled:=True;
    end;

    procedure TForm1.BitBtn1Click(Sender: TObject);
    begin
    if OpenDialog1.Execute=true then
    ListBox1.Items.LoadFromFile(OpenDialog1.FileName);//загружаем прокси в ListBox1
    end;

    procedure TForm1.BitBtn2Click(Sender: TObject);
    begin
    ListBox1.Items.Delete(ListBox1.ItemIndex);//если надо удоляем прокси с листа
    end;

    procedure TForm1.BitBtn4Click(Sender: TObject);
    begin
    ListBox1.Clear;//полная очистка ListBox1
    end;

    procedure TForm1.FormCreate(Sender: TObject);
    begin
    i:=0; //при старте возвращаемся к началу прокси листа
    end;

    procedure TForm1.Timer1Timer(Sender: TObject);
    begin
    DeleteIECache; //Очищаем кеш
    EndBrowserSession; //завершаем сисию
    if i=ListBox1.Items.Count-1 then //цыкл смены прокси в ListBox1
    begin
    BitBtn5.click;
    end
    else
    begin
    i:=i+1;//прибовляем по одному прокси
    proxy(ListBox1.Items.Strings);//подрубаем прокси
    WebBrowser1.Navigate(Edit1.Text);

    end;
    end;

    procedure TForm1.BitBtn5Click(Sender: TObject);
    begin
    Timer1.Enabled:=False;//если надо останавливаем работу
    end;
    end.
     
  20. winlogon.exe

    winlogon.exe Active Member

    Joined:
    5 Jun 2009
    Messages:
    31
    Likes Received:
    129
    Reputations:
    13
    вк не могу добавить комментарий к записи
    Code:
    [B]без капчи отправляется все прекрасно:[/B]
    
    PostData.Clear;
    PostData.Add('message='+form1.memo6.lines.Strings[randpost]);
    PostData.Add('act=post');
    PostData.Add('al=1');
    PostData.Add('hash='+hash);
    PostData.Add('reply_to='+id+'_'+post);
    PostData.Add('reply_to_user=0');
    PostData.Add('type=feed');
    html:=form1.idhttp1.Post('http://vk.com/al_wall.php',PostData);
    
    [B]C капчей:[/B]
    
    
    PostData.Clear;
    PostData.Add('message='+form1.memo6.lines.Strings[randpost]);
    PostData.Add('act=post');
    PostData.Add('captcha_sid='+ParseStr(html,'<!>2<!>','<!>'));
    PostData.Add('captcha_key='+captcha(ParseStr(html,'<!>2<!>','<!>')));
    PostData.Add('al=1');
    PostData.Add('hash='+hash);
    PostData.Add('reply_to='+id+'_'+post);
    PostData.Add('reply_to_user=0');
    PostData.Add('type=feed');
    html:=form1.idhttp1.Post('http://vk.com/al_wall.php',PostData);
    
    отправляю валидные данные, капча кей,сид, а он все равно в ответку отправляет [B]13814<!><!>0<!>6504<!>2<!>428025875569<!>1[/B]
    
    
    подскажите, в чем проблема?
     
Thread Status:
Not open for further replies.