PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
23899 | 12/09/29 15:09:31 | RE(1):コマンドライン引数の外部関数について By めめ |
23898 | 12/09/19 13:44:36 | コマンドライン引数の外部関数について By kouz |
カテゴリ:PowerBuilderの開発環境
日付:2012年09月29日 15:09 発信者:めめ
題名:RE(1):コマンドライン引数の外部関数について
kouzさん、こんにちは。
>取得したいのは、C関数のAddr[2],Addr[3],Addr[4],Addr[5]の内容です。
ローカル外部関数 SUB の引数は int と string ですが、
C関数の配列変数は数値タイプになっていませんか?
とりあえず、PowerBuilder 側の記述にあわせて文字配列としてみました。
あと、関数のエクスポートも必要になりますね。(DEFファイル or __declspec(dllexport))
# こちらは DEF ファイルでエクスポートしました。
外部関数についての詳細は、アプリケーションテクニックマニュアルの第21章にある
外部関数の使い方を参照してみてください。
【ローカル外部関数】
FUNCTION uint SUB( int argc, ref string buff[] ) LIBRARY \"SUB.DLL\" ALIAS FOR \"SUB;Ansi\"
【関数】
string buff[]
Long ll_idx
/* 十分な領域の確保が必要です */
For ll_idx = 1 To 5 ; buff[ll_idx] = Space(30) ; Next
SUB( 5, buff[] )
【C関数(SUB)】
#include
#include
unsigned short _stdcall sub(int argc, _TCHAR* Addr[]){
/* 必要な処理 */
return 0 ;
}
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS (記載なし)
DBMS (記載なし)
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.