![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Tapi -> CallBackFunction [D7, WinXP]
kolj © (2008-04-01 14:58:00)Данный код инициализирует линию и находит модем. Когда идет входной звонок то срабатывает CallBack ф-я, но программа почему-то не может распознать параметр dwMsg, подскажыте пожалуйста в чем может быть проблема.
procedure lineCallBack (hDevice,dwMsg,dwCallbackInstance,dwParam1,dwParam2,dwParam3:cardinal);
begin
form1.ListBox1.Items.Add('Callback');
case dwmsg of
LINECALLSTATE_OFFERING:
form1.ListBox1.Items.Add('Call');
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
f_hline:hline;
lineApp:HLINEAPP;
hCal : HCALL;
lpDeviceID: PVarString;
lpszDeviceClass:LPCWSTR;
lineInit:LINEINITIALIZEEXPARAMS;
dwNegotiatedTapiVersion:DWORD;
LineExtension:LINEEXTENSIONID;
dwAPIVersion:dword;
ndevs:dword;
AppName:array[0..20] of char;
dwExtVersion:Dword;
lpLineCaps:linedevcaps;
p:pchar;
dwTapiDeviceID:Longint;
dwTapiMediaMode:DWORD;
err,l,err1,i:longint;
s:string;
begin
dwTapiDeviceID:=-1;
dwTapiMediaMode:=LINEMEDIAMODE_INTERACTIVEVOICE;
dwAPIVersion :=$00020000;
p:=pchar('kolj');
AppName := 'IP OFFICE Project';
dwExtVersion := 0;
ndevs:=0;
lineapp:=0;
lineInit.dwCompletionKey:=0;
lineInit.dwTotalSize := sizeof(LINEINITIALIZEEXPARAMS);
lineInit.dwOptions :=LINEINITIALIZEEXOPTION_USEHIDDENWINDOW;
err1 := lineInitializeEx( @lineApp , HInstance , @lineCallBack , AppName ,nDevs , dwAPIVersion, lineInit );
LineExtension.dwExtensionID0:=0;
for i:=0 to ndevs do begin
err1:=lineNegotiateAPIVersion(lineApp,i,dwAPIVersion,dwAPIVersion,dwNegotiatedTa piVersion,LineExtension);
if err1=0 then begin
lpLineCaps.dwTotalSize := sizeof(LINEDEVCAPS);
err1:=lineGetDevCaps(lineapp,i,dwNegotiatedTapiVersion,0,@lpLineCaps);
if err1= 0 then begin
if (lplineCaps.dwMediaModes = 30) then begin
listbox1.Items.Add(' !!!! Device');
dwTapiDeviceID:=i;
end;
end;
end;
end;
err1:=lineopen(lineapp,dwTapiDeviceID,@f_hline,dwAPIVersion,0,0,LINECALLPRIVILEG E_MONITOR +LINECALLPRIVILEGE_OWNER , LINEMEDIAMODE_AUTOMATEDVOICE, nil);
Cj (2008-04-01 15:33:00) [1]а stdcall кто ставить будет? бябя федя? тетя мотя?