Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi (до версии 2009) - часть 6

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123

Открыть новую тему     Написать ответ в эту тему

ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Продолжение темы Вопросы по Delphi (до версии 2009) - часть 5

Познаем сами, помогаем другим...
Обсуждаем вопросы, не связанные с юникоидными версиями Delphi - для этого есть соответствующая тема (см. ссылки ниже).

Правила топика:
    Прежде чем спрашивать:
  1. Желательно изучить вопрос, попытаться найти ответ в прилагаемых мануалах, хелпах и анализируя исходники.
  2. Выполнить поиск по топику (открыть "Версия для печати" и поискать ответ там).
  3. Применить фильтр по разделу "Прикладное программирование". Ответы на многие старые вопросы могли быть даны в отдельных темах.
  4. Продумайте вопрос. На поверхностные вопросы вы получите поверхностные ответы, или вообще ответов не получите.
  5. Желательно указывать версии используемого компилятора и операционной системы.
    Прежде чем отвечать:
  1. Если не можете помочь, не мешайте.
  2. Если уж вы отвечаете на вопрос, давайте ответ по сути.
  3. Если вы не уверены, так и говорите! Ошибочный, но авторитетно звучащий ответ хуже, чем отсутствие ответа.
  4. Задавайте дополнительные вопросы, чтобы получить больше информации.
  • Отсутствие ответа не равносильно игнорированию - иногда участники форума просто не знают ответ. Повторная посылка вопроса не приветствуется. Посты типа "неужели никто не знает ответа..." или "может мне все-таки кто-нибудь ответит" недопустимы.  
  • Все большие куски кода (более 5 строк) оформляем в тег [morе] дабы уменьшить размер поста. FAQ по тегу [morе].

     
    И старайтесь, чтобы ваш код не попал сюда

  • Всего записей: 3936 | Зарегистр. 29-07-2003 | Отправлено: 05:13 19-05-2010 | Исправлено: data man, 02:45 31-12-2010
    Alexzzy

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    XenoZ
    Дельфи то причем? Для начала надо знать что и как умеет предоставлять Гисметео.

    Всего записей: 1456 | Зарегистр. 10-07-2013 | Отправлено: 18:20 26-12-2015
    XenoZ



    Gold Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Alexzzy

    Цитата:
    Дельфи то причем? Для начала надо знать что и как умеет предоставлять Гисметео.

    При деле. Вопрос к тем дельфийцам, кто это знает.

    ----------
    А оно мне надо?..

    Всего записей: 5034 | Зарегистр. 29-03-2006 | Отправлено: 18:43 26-12-2015
    Alexzzy

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    XenoZ
    Я бы разделил задачу на две части. И решение первой искал бы без привязки к Дельфи.
    А то получается типа такого - помогите написать такой-то SQL запрос к такой-то СУБД с использованием Дельфи...

    Всего записей: 1456 | Зарегистр. 10-07-2013 | Отправлено: 22:09 26-12-2015
    XenoZ



    Gold Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Alexzzy
    Судя по всему, ответа на заданный вопрос у тебя нет. Тогда непонятна твоя активность.

    ----------
    А оно мне надо?..

    Всего записей: 5034 | Зарегистр. 29-03-2006 | Отправлено: 10:38 27-12-2015
    dimka11gg

    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите, что исправить? Не работает с концом строки
    Подробнее...

    Всего записей: 495 | Зарегистр. 15-06-2010 | Отправлено: 10:53 27-12-2015 | Исправлено: dimka11gg, 10:56 27-12-2015
    Alexzzy

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    XenoZ
    Жаль что не понятна, иначе возможно уже получил бы решение.
     
    dimka11gg
    while a < l-1 do

    Всего записей: 1456 | Зарегистр. 10-07-2013 | Отправлено: 14:10 27-12-2015
    XenoZ



    Gold Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Alexzzy

    Цитата:
    Жаль что не понятна, иначе возможно уже получил бы решение.  

    Телепаты - на каникулах. Есть, что сказать по делу - добро пожаловать, нет - для флуда есть другие топики.
     
    dimka11gg
    Конструкция работать не будет. При l-a>2 словишь исключение при попытке чтения индекса из пустой строки. Ошибка в цикле for: поскольку индексируешь строку, то и в параметры цикла нужно заносить текущую длину индексируемой строки. И, при указанном тобой алгоритме, в любом случае s станет пустой при третьем проходе цикла while.

    ----------
    А оно мне надо?..

    Всего записей: 5034 | Зарегистр. 29-03-2006 | Отправлено: 17:24 28-12-2015
    Alexzzy

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    XenoZ
    Тебе дали совет. Не нравится - пропусти. Нет, надо пофлудить...

    Всего записей: 1456 | Зарегистр. 10-07-2013 | Отправлено: 12:06 29-12-2015
    ShIvADeSt



    Moderator
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    XenoZ
    Вопрос о том, какой сделать запрос к ГисМетео не относится к Дельфи, так как Дельфи <> ГисМетео. Будет запрос - можно будет спросить, как его оформить в виде кода.  
    Приведенный ранее код выдает данные из шаблона ГМ и не более того. Заставить его выдавать что то большее невозможно. Весь интернет использует эти данные.
    Если необходимо получать другие данные, то либо искать АПИ ГМ, либо парсить сам сайт и быть готовым пилить парсер под каждое изменение страницы.
    Очень много инфы здесь
    http://www.askdev.ru/question/6092/API-%D0%BF%D0%BE%D0%B3%D0%BE%D0%B4%D1%8B/


    ----------
    И создал Бог женщину... Существо получилось злобное, но забавное...

    Всего записей: 3936 | Зарегистр. 29-07-2003 | Отправлено: 02:31 30-12-2015 | Исправлено: ShIvADeSt, 02:36 30-12-2015
    XenoZ



    Gold Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    ShIvADeSt
    Напрямую - нет. Вопрос был задан в расчете на наличие информации у посещающих топик. Нет информации - хорошо, буду копать дальше.
    Если будет запрос, то, как оформить его в коде, разберусь сам. Парсить сайт - нерационально. К тому же, веб-страница отдается по SSL, что, при использовании Indy, тянет за собой две библиотеки OpenSSL.

    ----------
    А оно мне надо?..

    Всего записей: 5034 | Зарегистр. 29-03-2006 | Отправлено: 18:38 30-12-2015
    F777



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    del

    Всего записей: 2176 | Зарегистр. 23-02-2004 | Отправлено: 05:25 02-01-2016 | Исправлено: F777, 15:29 02-01-2016
    HekTo

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Добрый день.
     
    Делаю OwnerDraw ListBox. Хочу чтобы выделенный элемент выглядел как в TListView. Для этого в FormCreate:

    Код:
    SetWindowTheme(lBox.Handle, 'explorer', nil)
    FThemeData := OpenThemeData(lBox.Handle {0}, 'LISTVIEW');

    А в OnDrawItem:

    Код:
     
    var
      ElementDetails: TThemedElementDetails;
    begin
      with (Control as TListBox).Canvas do begin
        if odSelected in State then begin
          ElementDetails.Part := LVP_LISTITEM;
          ElementDetails.State := 1;
          with ElementDetails do
            DrawThemeBackground(FThemeData, Handle, Part, State, Rect, nil);
    .............
     

    Получаю серый прямоугольничек. Что я делаю не так?..
    Если заменить 'LISTVIEW' на, например, 'REBAR' и LVP_LISTITEM на RP_BACKGROUND, то всё работает.
     
    ------
    Нашел решение.

    Всего записей: 150 | Зарегистр. 30-09-2003 | Отправлено: 22:58 07-02-2016 | Исправлено: HekTo, 18:02 08-02-2016
    yser

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    del

    Всего записей: 14 | Зарегистр. 03-08-2003 | Отправлено: 13:16 25-02-2016 | Исправлено: yser, 13:19 25-02-2016
    GRom_V

    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Здрасте!
    Подскажите плз почему не работает код - не отправляется сообщение (ошибка на  IdSMTP1.Send(IdMessage1);)
     
    var
        attach: TidAttachment;
        begin
          IdSMTP1.AuthenticationType:= atLogin;
          IdSMTP1.Username:='login';  
          IdSMTP1.Password:='1234567';  
          IdSMTP1.Host:='smtp.mail.ru';  
        
          IdSMTP1.Port:=25;  
     
          IdMessage1.CharSet:='windows-1251';
          IdMessage1.ContentType:='text/plain';      
          IdMessage1.Body.text:='Текст';
          IdMessage1.Subject:=ConvertToWIN1251('Тема');  
          IdMessage1.From.Address:='login@mail.ru';  
          //IdMessage1.From.Name:=ConvertToWIN1251('User');  
          IdMessage1.Recipients.EMailAddresses:='login2@mail.ru';  
          IdMessage1.IsEncoded:=true;
        
          try
            
            IdSMTP1.Connect();
            IdSMTP1.Send(IdMessage1);
            showmessage('Сообщение отправлено');
          except
            showmessage('Ошибка при отправке');
          end;
     
        IdSMTP1.Disconnect;
     
        end;

    Всего записей: 466 | Зарегистр. 31-10-2006 | Отправлено: 06:03 12-04-2016 | Исправлено: GRom_V, 06:04 12-04-2016
    XenoZ



    Gold Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    GRom_V
    Если не изменяет память, мэйлру давно перешли на SSL. Ну и порт, соответственно, - 465.

    ----------
    А оно мне надо?..

    Всего записей: 5034 | Зарегистр. 29-03-2006 | Отправлено: 06:31 12-04-2016
    GRom_V

    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Уважаемые делфиры... есть такой код:
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, IdBaseComponent, IdComponent, IdTCPServer, IdCustomHTTPServer,
      IdHTTPServer, idcontext;
     
    type
      TForm1 = class(TForm)
        IdHTTPServer1: TIdHTTPServer;
        procedure IdHTTPServer1CommandGet(AContext: TIdContext;
          ARequestInfo: TIdHTTPRequestInfo;
          AResponseInfo: TIdHTTPResponseInfo);
     
      private
        { Private declarations }
      public
        { Public declarations }
      end;
     
    var
      Form1: TForm1;
     
    implementation
     
    {$R *.dfm}
     
     
     
    procedure TForm1.IdHTTPServer1CommandGet(AContext: TIdContext;
      ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
    begin
    idhttpserver1.ServeFile(Athread, AResponseInfo, 'C:\www\root'+ARequestInfo.Document);
    end;
     
    ругается: [Error] Unit1.pas(35): Undeclared identifier: 'ServeFile' Как победить?

    Всего записей: 466 | Зарегистр. 31-10-2006 | Отправлено: 03:04 26-04-2016
    exteris

    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    AResponseInfo.ServeFile

    Всего записей: 378 | Зарегистр. 14-04-2003 | Отправлено: 09:09 26-04-2016
    GRom V

    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

    сделал так:
     
    procedure TForm1.IdHTTPServer1CommandGet(AContext: TIdContext;
      ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
    begin
    AResponseInfo.ServeFile(AContext ,'d:\www\root'+ARequestInfo.Document);
     
    end;
     
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    IdHTTPServer1.Active:=True;
    end;
     
    Компилится, но при нажатии кнопки выходит ошибка "could njt bing socket. Addrees and port are already in use."
    Что не так?
     
    Добавлено:
    Адрес выставил 127.0.0.1:80  
    И чем это может быть занято?

    Всего записей: 466 | Зарегистр. 31-10-2006 | Отправлено: 13:30 26-04-2016 | Исправлено: GRom V, 13:50 26-04-2016
    NeoAnomaly

    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    И чем это может быть занято?

    Посмотри через netstat. И что у тебя по файрволлам?

    Всего записей: 416 | Зарегистр. 23-03-2010 | Отправлено: 16:21 26-04-2016
    GRom_V

    Full Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

    Спасибо - на другой машине без проблем... буду разбираться.
    Еще вопрос :
    У меня index.html лежит в директория 'd:\www\root и если я набираю http://127.0.0.1/index.html то все норм - index.html грузится.
    Как сделать чтоб он грузился при вводе http://127.0.0.1 (без index.html)?
    пробовал так
     AResponseInfo.ServeFile(AContext ,'d:\www\root\index.html'+ARequestInfo.Document); не пашет...
    Подсобите раку)))
     
     
    Добавлено:
    все догнал - просто убрал +ARequestInfo.Document

    Всего записей: 466 | Зарегистр. 31-10-2006 | Отправлено: 02:24 27-04-2016
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 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 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123

    Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по Delphi (до версии 2009) - часть 6

    Имя:
    Пароль:
    Сообщение

    Для вставки имени, кликните на нем.

    Опции сообщенияДобавить свою подпись
    Подписаться на получение ответов по e-mail
    Добавить тему в личные закладки
    Разрешить смайлики?
    Запретить коды


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.Board
    © Ru.Board 2000-2018

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru

    Рейтинг.ru