яндекс не висит - с портом тоже не помогло так тоже не работает: Code: procedure TForm1.Button1Click(Sender: TObject); var IdSMTP: TIdSMTP; idMessage: TidMessage; begin idMessage := TIdMessage.Create(nil); try with idMessage do begin Recipients.Add.Address :='[email protected]';{ кому отправляем } Subject :='Привет с античата!';{Тема} From.Address := '[email protected]';{ свое мыло } Body.Text := 'Добрый день'+#13+ 'Я знаю Delphi'; end; IdSMTP := TIdSMTP.Create(nil); with IdSMTP do try Host := 'smtp.ukrwest.net'; { сервер исходящей почты } Connect; Send(idMessage); Disconnect; finally Free; end; finally Free; end; end;
Фоерволл установлен? Попробуй отключить, не поможет запусти без обработчика ошибок, будет работать или нет, в коде ошибок не нашел
файервола нет, без обработчика пробовал я пользуюсь 2009 версией, в ней поле smtp.AuthType может быть: satDefault, satNone, satSASL
Здравствуйте. Нужна помощь. Нужно загрузить страницу в WebBrowser, получить ответ сервера (код), и если код 300..399 то перейти на начальную страницу сайта, просто .ru, либо просто отдельно при коде 302 переадресация. спасибо.
Всем привет, собственно у меня 2 вопроса. 1) Как в делфи запустить какой-нибуть сторонний файл, *.exe например 2)Сори что не в тему, но все-таки, посоветуйте плиз книгу по object-c
создаю программу с потоками, в потоке цикл, в котором идёт проверка, а проверка осуществляется за счёт функции, компилятор почему то ругается на функцию, типо её нет, а если в потоке не использовать функцию то всё запускается. в чём может быть проблема?
чёто ничего не получается пишет [Error] Unit1.pas(68): Undeclared identifier: 'Check' так как же мне запустить функцию в потоке?
Code: TNewThread = class(TThread) private { Private declarations } protected procedure Execute; override; end; var Form1: TForm1; implementation {$R *.dfm} function CheckURL_Indy(url:string):boolean; var http:TIdHTTP; begin try http:=TIdHTTP.Create(nil); http.Get(url); if http.ResponseCode=200 then result:=true else result:=false; http.Free; except result:=false; end; end; { TNewThread } procedure TNewThread.Execute; begin if CheckURL_Indy(form1.Edit1.Text + dir) ///ругается на эту строку then begin form1.Memo1.Lines.Add(form1.Edit1.Text +dir+ ' - ok'); end else begin form1.Memo2.Lines.Add(form1.Edit1.Text +dir+ ' - bad'); end; end; procedure TForm1.Button1Click(Sender: TObject); var NewThread: TNewThread; begin NewThread:=TNewThread.Create(true); NewThread.FreeOnTerminate:=true; NewThread.Priority:=tpLower; NewThread.Resume; end; примерно так
работать с элементами формы из потока надо с использованием TCriticalSection чтоб быть уверенным в том что в этот же момент что-либо не обращается туда же. Могу ошибаться - попробуйте у функции дописать ; external хотя по идее должно и так работать, нет возможности проверить.
Синхронизируй работу с формой, или используй критические секции - это раз. Насчет проблемы - объяви функцию как член класса TNewThread - это два.
Все привет! Хотел попросить помощи в коде и его реализации! Есть программа с базой подключенной через АДО (БД из Акцеса)! там всего одна таблица с определённым количеством столбцов но ближе к делу! есть столбец "Количество" так же на форме имеется кнопа продажа! Дилемма такая что при нажатии кнопки продажа количество выделенного товара уменьшалась на 1 значение или на определённое количество указанное в компоненте Edit! Если есть возможность помогите!
deemon36 то что ты написал можно реализовать по разному. лучше залей куда нибудь исходники, или распиши подробно какие компоненты ты используешь.
deemon36, Да присоединяюсь к тому что написал dos999. Куда выводишь БД хоть напиши, а лучше исходники скинь
программа тока тока начала писаться! Использую компоненты следующие: ADOConnection, ADOTable, DataSource, DBGrid ну и стандартные типо кнопок не буду уж говорить! Самы прсотой и не сложный способ нужен! могу описать принцип работы: "при нажатии на кнопку происходит следующее на вылеченном товаре происходит списание 1 или более указаное в Edit или другом подходящем компаненте количество товара при этом стоит условие если количество товара 0 выходит сообщение мол нет товара на складе" мне по сути нужен код списания а всё остальное я сам доработаю