![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как передать параметр от программы VB в Делфи? [D7, XP]
Сергей © (2008-05-13 16:37:00)Подскажите, пожалуйста. Есть программа на VB нужно передать значение переменной в программу на Делфи. Как это сделать?
Сергей (2008-05-13 19:53:00) [1]Спасибо за помощь.
Leonid Troyanovsky (2008-05-13 19:47:00) [2]
> Renegat (13.05.08 19:35) [7]
> всего одно число, то заполнять, имхо, жирновато будет.
А где было про число?
Да, и числа разные бывают.
--
Regards, LVT.
Leonid Troyanovsky (2008-05-13 19:40:00) [3]
> Сергей (13.05.08 18:59) [6]
> Спасибо. Если не сложно покажите фрагмент кода С посылкой
> сообщений или ссылку на что либо подобное?
http://vb.mvps.org/samples/project.asp?id=PrevInst
--
Regards, LVT.
Renegat (2008-05-13 19:35:00) [4]> RTFM: WM_COPYDATA
Ну, тут ведь структуру ещё заполнять... Если мы будем передавать всего одно число, то заполнять, имхо, жирновато будет.
const
WM_SENDVARIABLE = WM_USER + 200;
...
Передатчик:
var
i: Integer;
begin
...
i:=SendMessage(Окно_проги_куда_передаём, WM_SENDVARIABLE, 0, нужное_число);
if i=1 then [всё путём] else [ошибочка вышла]
Приёмник:
type
TForm1 = class(TForm)
protected
procedure AcquireVar(var M:TMessage); message WM_SENDVARIABLE;
private
{ Private declarations }
public
{ Public declarations }
end;
...
procedure TForm1.AcquireVar(var M:TMessage);
begin
ShowMessage('Принято число: '+intToStr(M.LParam));
M.Result:=1;
end;
как-то вот так.
Сергей (2008-05-13 18:59:00) [5]Спасибо. Если не сложно покажите фрагмент кода С посылкой сообщений или ссылку на что либо подобное? (WM_SENDVARIABLE = WM_USER + 200. И в LParam - число.) Заранее Thanks.
palva (2008-05-13 17:51:00) [6]
> Есть программа на VB нужно передать значение переменной
> в программу на Делфи. Как это сделать?
Это зависит от того, как написана программа на VB. Если она не предусматривает каких-либо передач, то передать невозможно.
Leonid Troyanovsky (2008-05-13 17:43:00) [7]
> Renegat (13.05.08 17:33) [3]
RTFM: WM_COPYDATA
--
Regards, LVT.
Renegat (2008-05-13 17:33:00) [8]если приложения, кому предназначена эта переменная, имеет окна, то ИМХО проще всего послать заранее определённое сообщение. Скажем, WM_SENDVARIABLE = WM_USER + 200. И в LParam - число.
DrPass (2008-05-13 17:06:00) [9]Через СОМ-интерфейс будет намного технологичнее
Сергей М. (2008-05-13 16:39:00) [10]В виде параметра ком.строки запуска что ли ?