Ce forum est maintenant fermé, seule cette archive statique reste consultable.
  FORUM Rue-Montgallet.com
  Programmation
  Delphi - Pascal

  Problème initialisation TAPI

Bas de page
Auteur Sujet :

Problème initialisation TAPI

n°16468
bel73
Profil : Jeune recrue
Posté le 05-05-2006 à 22:37:49  
 

j'essay d'initialiser la Telephony API avec les deux méthodes :
initialize et initializeEX. Mais j'ai l'erreur 80000035 LINEERR_INVALPOINTER.
 
extrait du code :
 
unit Main;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, TAPI, TAPI3Err, TSPI, StdCtrls, Buttons;
 
type
  TForm1 = class(TForm)
    BitBtn1: TBitBtn;
    BTN_InitTapi: TSpeedButton;
    TapiInform: TMemo;
    Label1: TLabel;
    BTN_OldInit: TSpeedButton;
    procedure BTN_InitTapiClick(Sender: TObject);
    procedure BTN_OldInitClick(Sender: TObject);
    function InitTAPI : Longint;
    function OldInitTAPI : Longint;
  private
    { Déclarations privées }
     lineApp : PHLINEAPP;  
     CallParams : TLineCallParams;
     InitParams : TLineInitializeExParams;    
  public
    { Déclarations publiques }
  end;
 
var
  Form1: TForm1;
 
   nDevs : DWord;  
   TapiVers : DWord;  
   Vers : record
                 P,R : word
          end absolute tapivers;    
 
implementation
 
{$R *.dfm}
 
procedure CallBackFct (hDevice, dwMessage, dwInstance,
  dwParam1, dwParam2, dwParam3: Longint);
begin
end;
 
function TFORM1.InitTAPI;
begin
   TapiVers := $00030001;  
   FillChar(InitParams, 0, SIZEOF(InitParams));
   with InitParams do
     begin
         dwTotalSize := SIZEOF(InitParams);  
         dwOptions := LINEINITIALIZEEXOPTION_USEHIDDENWINDOW
     end;
   InitTAPI := lineInitializeEx(lineApp, HInstance,  
      @CallBackFct, nil, nDevs, TapiVers, InitParams);
end;
 
function TForm1.OldInitTAPI;
begin
FillChar(CallParams, sizeof(CallParams), 0);
 with CallParams do
  begin
  dwTotalSize := sizeof(CallParams);
  dwBearerMode := LINEBEARERMODE_VOICE;
  dwMediaMode := LINEMEDIAMODE_INTERACTIVEVOICE;
  end;
   OldInitTAPI := lineInitialize(lineApp, HInstance, @CallBackFct, nil, nDevs)
end;
 
procedure TForm1.BTN_InitTapiClick(Sender: TObject);
begin
 
  with TapiInform.Lines do
    begin
      Clear;
      add('Code erreure : ' + inttohex(InitTAPI, 8));
      add('TAPI Version : ' +IntTostr(Vers.P)+'.'+IntTostr(Vers.P));
      Add('Nombre des Devices : '+ IntToStr(nDevs));
    end
end;
 
procedure TForm1.BTN_OldInitClick(Sender: TObject);
begin
  with TapiInform.Lines do
    begin
      Clear;
      add('Code erreure : ' + inttohex(OldInitTAPI, 8));
      Add('Nombre des Devices : '+ IntToStr(nDevs))
    end
end;
end.

mood
Pub
Posté le 05-05-2006 à 22:37:49  
 

n°17837
dagada
Profil : Jeune recrue
Posté le 09-11-2006 à 12:48:35  
 

unction TfrmMain.InitTAPI():Boolean;
var
AppName:array[0..20] of char;
nAPIVersion:DWORD;
begin
Result:=true;
lineApp := 0;
AppName := 'IP OFFICE Project';
 
LogString( 'START TO INITIALIZE TAPI' );
with lineInit do
begin
dwTotalSize := sizeof( lineInit );
dwOptions := LINEINITIALIZEEXOPTION_USEHIDDENWINDOW;
end;
nAPIVersion := $00020000;
nReturn := lineInitializeEx( @lineApp , HInstance , lineCallBack , AppName ,nDevs , nAPIVersion, lineInit );
if (nReturn < 0)
then
begin
// Initialize Failed
LogString( 'FAILED TO INITIALIZE ' + IntToHex( nReturn,8 ) + ' '
+ IntToHex( HInstance ,8 ) ) ;
Result:= false;
end
else if (nDevs = 0) then
begin
LogString ('NO TAPI LINE DEVICES' );
lineShutDown( lineApp );
lineApp :=0;
Result:= false;
end
else
begin
LogString ( 'LINEAPP:' + IntToHex( lineApp , 8 ) + ' ' +
'INSTANCE:' + IntToHex( HInstance , 8 ) + ' ' +
'LINE DEVICES:' + IntToHex( nDevs ,8) + ' ' +
'TAPI VERSION:' + IntToHex( nAPIVersion , 8 ) ) ;
// save the handle
m_lineApp := lineApp;
 
end;
end;
 
 
j'utilise ce code et j'ai pas des problème d'initialisation TAPI  
si tu as avancé en ce sujet tu peux me mettre au courant  
 
Cordialement

n°17838
dagada
Profil : Jeune recrue
Posté le 09-11-2006 à 12:52:41  
 

le composant hbtapi fait bien les chosse aussi,tu peux le tester si tu veux!
 
si tu le trouve pas je suis là pour des eventuelle aides !

  FORUM Rue-Montgallet.com
  Programmation
  Delphi - Pascal

  Problème initialisation TAPI

© 2000-2024 Forum.rue-montgallet.com - Tous droits réservés