PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
22852 06/11/24 20:34:47 PB6.5: WindowsXP上でのダイヤラ(TAPI32.DLL)のコールについて By igosso

カテゴリ:PowerBuilderの開発環境
日付:2006年11月24日 20:34 発信者:igosso
題名:PB6.5: WindowsXP上でのダイヤラ(TAPI32.DLL)のコールについて

ある顧客管理システムを構築しまして、顧客情報画面から、
「電話する」ボタンをクリックすると、Windowsのダイヤラを
起動し、表示された顧客情報の電話番号に自動でダイヤルを
かける、というシステムを開発しております。

スクリプトとしては以下のとおりです。

1.グローバル外部関数で
  FUNCTION int GetSystemMetrics(int indexnum) LIBRARY \"USER32.DLL\"
  を宣言

2.ローカル関数に
  /* External RAS API function prototypes. */
  Function ULONG tapiRequestMakeCall( string dial, string app, string CallParty, string Comment) 
LIBRARY \"TAPI32.DLL\"
  を宣言したオブジェクト(n_tapi_32)を作成

3.n_tapi_32オブジェクト内のユーザオブジェクト関数(of_dial)に

  long  ll_Ret
  
  ll_Ret = tapiRequestMakeCall( CallNum, \"\", \"\", \"\")

  RETURN ll_Ret

  と記述


4.顧客管理画面(ウィンドウオブジェクト)のボタン内で、
  inv_tapi.of_dial( tel_num, \"\", \"\", \"\" )
  のようにコール

以上のような手順です。

今までWindows98SEでは、上記の処理で問題無くダイヤルできて
いたのですが、WindowsXP上で動かすようになってから、
上手く動作しません。

症状としては、

ダイヤラ(dialer.exe)は起動し、ダイヤル処理は走るが、
\"電話\"と\"インターネット通話\"とあり、インターネット通話
のほうで処理が走ってしまいます。

これを、インターネット通話ではなく、通常の電話で、呼び出す
処理を走らせたいのですが、この方法をご存知の方はいらっしゃい
ますでしょうか。

おそらく、tapiRequestMakeCall内のパラメータの何かを
ある値に変えれば良いのだと思いますが、この関数の情報が
見つかりにくく、苦戦しております…。

恐れ入れいますが、どなたかご教授いただけないでしょうか。
よろしくお願いします。



付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows XP
DBMS Oracle Net8
Browser (記載なし)

Server SoftWare

OS Windows NT 4.0
DBMS Oracle8i
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.