Обсуждение программирования на Delphi в конференции ru.delphi
работать с СОМ портом по handle
From: Mustafin <prog [@] i-set.ru>
Есть такая программа - t-mail,
которая может принимать входящие звонки (модем снимает трубку,
соединяется)
если звонит не такая-же программа (не t-mail)
- то можно запустить внешнее приложение и выдать ей handle (число) СОМ
порта - при этом сам T-MAIL не отсоединяется от модема (порта).
Подскажите, как зная этот самый handle (число) посылать\принимать из СОМ
порта (фактически в модем - и далее на удаленную вызывающую программу)
данные (строки)?
--
Mustafin
Отправлено через сервер Форумы [@] mail.ru - talk.mail.ru
* Origin: Talk.ru (2:5020/400)
Re: работать с СОМ портом по handle
From: "Andrey Ryazanov" <rash [@] northnet.ru>
"Mustafin" <prog [@] i-set.ru> wrote in message news:dbvuvg$274$1 [@] host.talk.ru...
> Подскажите, как зная этот самый handle (число) посылать\принимать из СОМ
> порта (фактически в модем - и далее на удаленную вызывающую программу)
> данные (строки)?
Read/WriteFile.
* Origin: MTU-Intel ISP (2:5020/400)
Re: Загадка программерам
From: Alexander Tomilov <asteroid [@] perm.ru>
Хаю ду ю ду Alexander Salmanov?
Смотрю и вижу, как ты пишешь ко мне и дай-ка, думаю, отвечу:
AS> Если это надо тебе, это не значит, что надо всем остальным. Возьми и сам
AS> припиши, раз жить без этого не можешь.
Да я то смогу, не надо так кипятиться.
AT>> Или в Delphi после 5 версии это уже работает
AT>> как надо?
AS> Это всегда _нормально_ работало.
Конечно нормально - ни с того, ни с сего значение true стало false -
чего же тут ненормального?
--
Пить надо меньше! Меньше кого?
Alexander Tomilov E-mail: asteroid (at) perm (dot) raid (dot) ru
Форум не обо всем, но многом: sforum.hut1.ru/forum/
* Origin: Asteroid Software (2:5020/400)
Re: работать с СОМ портом по handle
From: Mustafin <prog [@] i-set.ru>
Andrey Ryazanov пишет:
AR> "Mustafin" <prog [@] i-set.ru> wrote in message news:dbvuvg$274$1 [@] host.
talk.ru...
AR>> Подскажите, как зная этот самый handle (число) посылать\принимать
из СОМ
AR>> порта (фактически в модем - и далее на удаленную вызывающую
программу)
AR>> данные (строки)?
AR> Read/WriteFile.
procedure TBlockSerial.Purge;
var
x: integer;
begin
SetSynaError(sOK);
x := PURGE_TXABORT or PURGE_TXCLEAR or PURGE_RXABORT or PURGE_RXCLEAR;
if not PurgeComm(FHandle, x) then
SerialCheck(sErr);
FBuffer := '';
ExceptCheck;
end;
на PurgeComm(FHandle, x) возникает error 6: неверный дескриптор
Если этого не делать, то на:
FillChar(Overlapped, Sizeof(Overlapped), 0);
SetSynaError(sOK);
y := 0;
MyResult := WriteFile(FHandle, Buffer^, Length, DWord(Result),
[@] Overlapped);
if not MyResult then
y := GetLastError;
y=6 -
error 10003: tranceive queue is full
и далее
error 6: неверный дескриптор
Что бы это все значило? Может у кого есть работающий пример?
(тексты примера взяты из:
SYNASER - Serial Port Synchronous Library for Delphi and Kylix
Other related information can be found at www.ararat.cz/synapse/)
--
Mustafin
Отправлено через сервер Форумы [@] mail.ru - talk.mail.ru
* Origin: Talk.ru (2:5020/400)
SetWindowsHook
*..........[* _Привет, Slava!_ *]..........*
21 Июл 05 07:55, */Slava Antonov/* ·•-> */Alexander Salmanov/*
SA> [msdn]If the hook procedure processed the message, it may return a
SA> nonzero value to *prevent the system from passing the message to* the
SA> rest of the hook chain or *the target window procedure*.[/msdn]
Вроде в России живем. Может русским языком напишешь как сделать?
SA> PS: Работать с мультимедиа кнопками можно еще через
SA> RegisterShellHookWindow. Функция появилась, имхо, в Вин ХР.
И где я по-твоему должен найти ее описание?
*..........[* _Удачи тебе, Slava!_ *]..........*
*_/С уважением Александр./_*
* Origin: -=B'n'TH team=- (2:5057/19.122)
Re: SetWindowsHook
From: "Andrey Ryazanov" <rash [@] northnet.ru>
"Alexander Salmanov" <Alexander.Salmanov [@] p122.f19.n5057.z2.fidonet.org> wrote in message news:1122213529 [@] p122.f19.n5057.z2.ftn...
> Вроде в России живем. Может русским языком напишешь как сделать?
Hу кто где :-)
Может ты и программу на русском языке писать будешь?
> SA> PS: Работать с мультимедиа кнопками можно еще через
> SA> RegisterShellHookWindow. Функция появилась, имхо, в Вин ХР.
> И где я по-твоему должен найти ее описание?
В Интернете/MSDN.
* Origin: MTU-Intel ISP (2:5020/400)
Re: Сканиpование поpтов
Пpиветствую тебя, Alexander
AM> procedure TForm1.Button1Click(Sender: TObject);
AM> var
AM> port: integer;
AM> begin
AM> for port:=0 to 1024 do
AM> begin
AM> TcpClient1.RemoteHost:=127.0.0.1;
AM> TcpClient1.RemotePort:=IntToStr(port);
AM> TcpClient1.Open;
AM> if TcpClient1.Connected then
AM> Memo1.Lines.Add(IntToStr(port) + ' откpыт');
^^^^ - засунь это дело в обpаботчики OnConnect и OnError.
AM> ProgressBar1.Position:=port;
AM> Application.ProcessMessages;
AM> end;
AM> end;
пpичем в данном случае тебе нужно остановить пpоцесс пеpебоpа до вызова одного из этих событий. Вообще как-то весьма кpиво получается...
With best regards, Vladimir
* Origin: Кулеp нyжен чтобы заcаcывать комаpов чеpез диcковод (2:468/42.256)
Re: Пакеты (*.bpl)
From: Дмитрий Слуцков <sdn [@] fromru.com>
Добренького тебе, Vitaliy!
Как-то Friday, July 22, 2005, ты писал(а) сюда:
= * = * =
VL> Hу да... использовать LoadPackage('???.bpl');
VL> Hо! Загpузил я пакет таим обpазом... а дальше?
VL> Как мне использовать класс описаный в этом пакете?
= * = * =
Так вот...
Совсем "на пальцах" вот delphid.dax.ru/docs/view/rtti.htm
А это от borland bdn.borland.com/article/0,1410,27178,0.html
= * = * =
С уважением и наилучшими пожеланиями,
Дмитрий Слуцков mailto:sdn [@] fromru.com
--
Отправлено через сервер Форумы [@] mail.ru - talk.mail.ru
* Origin: ОАО "ЦМД-софт" (2:5020/400)
Re: Shell Plus 2.3
From: "Andrew Holubovski" <news [@] delphiplus.org>
> > Однако никто не знает как убрать триальность?
> Я знаю, его надо купить.
Можно получить и на халяву ;-)
Hужно всего лишь написать статью и принять участие в конкурсе на
DelphiPlus.org
Best regards,
Andrew Holubovski
DelphiPlus Team
www.delphiplus.org
* Origin: Demos online service (2:5020/400)
Re: SetWindowsHook
From: "Slava Antonov" <deadbeef [@] so.yandex.ru>
Hello Alexander Salmanov, you wrote:
>> [msdn]If the hook procedure processed the message, it may return a
>> nonzero value to *prevent the system from passing the message to* the
>> rest of the hook chain or *the target window procedure*.[/msdn]
> Вроде в России живем. Может русским языком напишешь как сделать?
Перевожу дословно: "Если хуковая процедура обрабатывает сообщение, она может вернуть ненулевое значение, чтобы запретить системе отправлять сообщение дальше по цепочке хуков или целевой оконной процедуре"
>> PS: Работать с мультимедиа кнопками можно еще через
>> RegisterShellHookWindow. Функция появилась, имхо, в Вин ХР.
> И где я по-твоему должен найти ее описание?
В MSDN, или MSDN-online
--
Всего хорошего, Слава.
slava.fateback.com
* Origin: (http://news.cca.usart.ru/) USURT's FidoNET<-> (2:5080/1003 [@] fidonet)