[ 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. wolmer

    wolmer Member

    Joined:
    12 May 2009
    Messages:
    438
    Likes Received:
    97
    Reputations:
    9
    Да хорошо я вас понял :) Согласен не разборчего написал, исправил

    Ответ на #4516, нуллслип, ладно, другой ответит

    Ответ на #4517, еще точнее перефразировал!
     
    #4281 wolmer, 30 Sep 2009
    Last edited: 30 Sep 2009
  2. Nullsleep

    Nullsleep Member

    Joined:
    2 Jun 2009
    Messages:
    67
    Likes Received:
    26
    Reputations:
    0
    Ну, если ты имеешь ввиду нахождение индекса дерева по его названию, то циклом попробуй. Или я опять не так понял(
     
  3. Nullsleep

    Nullsleep Member

    Joined:
    2 Jun 2009
    Messages:
    67
    Likes Received:
    26
    Reputations:
    0
    Code:
    const
      s = 'element';
    var
      n, i: Integer;
    begin
      n := 0;
      for i := 0 to TreeView1.Items[0].Item[1].Count-1 do
        if TreeView1.Items[0].Item[1].Item[i].Text = s then
        begin
          n := i;
          Break;
        end;
    end;
    
     
    1 person likes this.
  4. Seregakz

    Seregakz New Member

    Joined:
    13 Jun 2009
    Messages:
    31
    Likes Received:
    1
    Reputations:
    0
    Народ подскажите как сделать чтобы на объекте tackbar небыло фокуса никогда!??? (пунктирная линния вокруг него)
     
  5. slesh

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

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    VPN сервер ты никогда не создаш средствами делфи. а если и создаш то это будет ожас как тупить. Ставь OpenVPN и не мучайся.
     
  6. tosip

    tosip New Member

    Joined:
    1 Jul 2009
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    я не хочу создавать vpn сервер!

    НАДО создать новое соединение vpn в windows!
    (Сетевые подключения->Новое подключение->VPN)!

    Нашел пример (или даже реализацию)
    http://forum.antichat.ru/showthread.php?p=654948
    Тока там компонента нет, по ссылке http://slil.ru/25692156 файл удален!
     
  7. Nullsleep

    Nullsleep Member

    Joined:
    2 Jun 2009
    Messages:
    67
    Likes Received:
    26
    Reputations:
    0
    wolmer, у меня последний вариант)
    Code:
    TreeView1.Items[0].Item[1].Item[1].Parent.Index;
    
     
  8. Seregakz

    Seregakz New Member

    Joined:
    13 Jun 2009
    Messages:
    31
    Likes Received:
    1
    Reputations:
    0
    slesh, нук подскажи)

    как дороботать чтобы куки посылать?)) если в заголовке куки посылать то хз почему по когда снифаю они не передаются!

    Code:
    function DownloadFile(const from_, to_: string): boolean;
    var
    hs, url: HInternet;
    buff: array[1..1024] of Byte;
    buff_length: DWORD;
    f: file;
    sAppName: string;
    begin
    Result:=False;
    sAppName := ExtractFileName(Application.ExeName);
    hs:=InternetOpen(PChar(sAppName),
    INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
    try
    url:=InternetOpenURL(hs, PChar(from_), nil, 0, 0, 0);
    try
    AssignFile(f, to_);
    Rewrite(f,1);
    repeat
    InternetReadFile(url, @buff, SizeOf(buff), buff_length);
    BlockWrite(f, buff, buff_length);
    until
    buff_length=0;
    CloseFile(f);
    Result:=True;
    finally
    InternetCloseHandle(url);
    end;
    finally
    InternetCloseHandle(hs);
    end;
    end;
     
  9. slesh

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

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    2 InternetOpenUrl автоматом сама учитывает куки полученные на предыдущих запросах.
    ЧТобы отключить это юзается предпоследний параметр - Flag = INTERNET_FLAG_NO_COOKIES
    также в этой функции 3-й параметр - адрес буфера где хранятся дополнительные хидеры.
    а четрветый параметр - длинна их.
    Вот их и юзай. т.е. сам составляй дополнительныйт ихер типа
    Cookie: xxxxxx
     
    1 person likes this.
  10. Uname-A

    Uname-A Elder - Старейшина

    Joined:
    19 Aug 2008
    Messages:
    73
    Likes Received:
    12
    Reputations:
    5
    Приветствую всех
    Есть процедура, в ней очень много кода.
    Необходимо при нажатии на кнопку(например) - тут же остановить выполнение этой процедуры
    Метод if stop=true then exit; не предлагать(кода ужастно много не писать же после каждой строчки это...)
    Пример того что я хочю можно увидеть в потоках
    тоесть процедура thread.Terminate;
    К сожелению потоки тоже использовать немогу....
     
  11. desTiny

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

    Joined:
    4 Feb 2007
    Messages:
    1,006
    Likes Received:
    444
    Reputations:
    94
    по какой пичине не устраивает поток либо фибер?
    так в голову приходят только совсем идиотские мысли вроде установить обработчик исключения и как-нибудь его вызвать. например, код в памяти переписать ) или... короче, это - извращения
     
  12. Uname-A

    Uname-A Elder - Старейшина

    Joined:
    19 Aug 2008
    Messages:
    73
    Likes Received:
    12
    Reputations:
    5
    Вообще у меня почемуто с потоками программа работала через раз... (программа каждую секунду меняет картинку в TImage)
    Сча вродь написал эту часть программы с нуля в другом проекте все заработало=)

    Впринципе этот вопрос можно считать решонным=)

    Ну и раз уж я тут =))) спрошу про варнинги
    Override method timeisout.execute should match case of ancestor TThread.Execute

    никак немогу убрать эту ошибку=(

    Symbol 'Suspend' is deprecated

    Ошибка показывает что процедура Suspend устарела
    Но чет немогу найти альтурнативу ей...
     
  13. desTiny

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

    Joined:
    4 Feb 2007
    Messages:
    1,006
    Likes Received:
    444
    Reputations:
    94
    ели раз в секунду - то делай SetTimer и KillTimer
     
  14. Uname-A

    Uname-A Elder - Старейшина

    Joined:
    19 Aug 2008
    Messages:
    73
    Likes Received:
    12
    Reputations:
    5
    я сказал образно =) Таймеры в программе испльзуются Но в данном случае он неприемлим Идея программы уже продуманна(не одну неделю думал...), программа написана, работает и осталось только улучшить некоторые её части(из за того что процедура завершается несразу происходит "проскок" цыфр(картинок цыфр))
    Ответь пожалуйста насчёт ворнингов=)
     
  15. desTiny

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

    Joined:
    4 Feb 2007
    Messages:
    1,006
    Likes Received:
    444
    Reputations:
    94
    ну первый ворнинг гласит, что лучше было бы, если б описание перегруженного метода совпадало 1 в 1 с предком, то есть с точностью до названий параметров и регистра букв.

    с Suspend не знаю. ни в 7ой, ни в 2009-ой делфе никаких "Deprecated" ворнингов не вижу.
     
    1 person likes this.
  16. Uname-A

    Uname-A Elder - Старейшина

    Joined:
    19 Aug 2008
    Messages:
    73
    Likes Received:
    12
    Reputations:
    5
    Вот блин=) А я думаю почему ошибка на ровном месте=)

    Ну насчёт Suspend в делфи 2010(Rad Studio 2010) нашол
    PHP:
    About Suspend and ResumePOSIX does not support suspending/resuming a thread.
      
    Suspending a thread is considerd dangerous since it is not guaranteed where the
      thread would be suspend
    It might be holding a lockmutex or it might be inside
      a critical section
    .  In order to simulate it in Linux we've used signals. To
      suspend, a thread SIGSTOP is sent and to resume, SIGCONT is sent. Note that this
      is Linux only i.e. according to POSIX if a thread receives SIGSTOP then the
      entire process is stopped. However Linux doesn'
    t entirely exhibit the POSIX-mandated
      behaviour
    . If and when it fully complies with the POSIX standard then suspend
      
    and resume won't work.
    А вообще как остановить поток? без Suspend(+ потом Terminate) поток не останавливается...

    ну вообще впринципе работа в никсах невожна..
    просто хотелось бы избавиться от замечаний.
     
  17. Seregakz

    Seregakz New Member

    Joined:
    13 Jun 2009
    Messages:
    31
    Likes Received:
    1
    Reputations:
    0
    Спс огромный всё пучком) а в данном примере: _http://forum.antichat.ru/showpost.php?p=1321076&postcount=19

    не подскажеш где юзать флаг INTERNET_FLAG_NO_COOKIES ?)

    предпоследний параметр HttpOpenRequest ?)
     
    #4297 Seregakz, 3 Oct 2009
    Last edited: 3 Oct 2009
  18. slesh

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

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    предпоследний параметр. в HttpOpenRequest
     
  19. Seregakz

    Seregakz New Member

    Joined:
    13 Jun 2009
    Messages:
    31
    Likes Received:
    1
    Reputations:
    0
    ещё вопросик! мб ты сталкивался! если допустим сервак сильно нагружен (сайт долго грузится) и прога падает в висняк, нельзяли както вылечить? :confused:
     
  20. slesh

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

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    смотря какой метод юзаеш. Если сокеты, то можно ставить таймаут на connect и на recv на уровне сокетов. Если юзаеш чтото большее типа WinInet то можно запускать в потоке и через WaitForSingleObject ждать определенное время завершения потока. Если WaitForSingleObject вернул статус таймаута, то закрываеш хендлы wininet'овские и прибиваешь поток.
     
Thread Status:
Not open for further replies.