PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
21102 04/04/20 16:00:30 RE(3):WindowsAPIのDeviceCapabilitiesについて質問です(解決) By motofumi
21093 04/04/19 15:00:43 RE(2):WindowsAPIのDeviceCapabilitiesについて質問です By motofumi
21086 04/04/16 21:08:20 RE(1):WindowsAPIのDeviceCapabilitiesについて質問です By yoshiki
21062 04/04/13 13:57:07 WindowsAPIのDeviceCapabilitiesについて質問です By motofumi

カテゴリ:印刷処理
日付:2004年04月19日 15:00 発信者:motofumi
題名:RE(2):WindowsAPIのDeviceCapabilitiesについて質問です

yoshikiさん、こんにちは。

//**************************************
// wf_papernames()
// サポートされる用紙名のリストを取得
// DeviceCapabilities DC_PAPERNAMES
// string as_DeviceName プリンタデバイス名(プリンタフォルダでの名前)
// ref string as_papernames[] 用紙名のリスト
// 戻り値 エラー:-1 用紙種類の数
//**************************************
long ll_i,ll_j,ll_ret
UInt li_Index
sr_DEVMODE lpDevMode
character lpOutput2[]
string ls_null,ls_tmp
setnull(ls_null)
li_Index = DC_PAPERNAMES
ll_ret = DeviceCapabilities(as_DeviceName,ls_null,li_Index,ls_null,ls_null)
if ll_ret = -1 then
 return -1
end if



(以下略)


当BBSの[013553]を元に帳票出力するウィンドウ関数にコーディングしたのですが、
まず、

sr_DEVMODE lpDevMode

のところで、コンパイルエラーが出たので、この行はコメントにしました。
そうするとコンパイルが通ったので、実行したら

ll_ret = DeviceCapabilities(as_DeviceName,ls_null,li_Index,ls_null,ls_null)

のところで、ll_ret に -1 が返ってきてしまいました。
そこで処理は終了です。。


他には・・
//インスタンス変数の宣言
Constant long DC_PAPERS = 2
Constant long DC_BINS = 6
Constant long DC_BINNAMES = 12
Constant long DC_PAPERNAMES = 16

//プリンタ設定ローカル外部関数の定義
Function long DeviceCapabilities(string lpDeviceName,string lpPort,UInt iIndex,ref string 
lpOutput,ref string lpDevMode) LIBRARY \"winspool.drv\" Alias for \"DeviceCapabilitiesA\"

Function long DeviceCapabilities(string lpDeviceName,string lpPort,UInt iIndex,ref character 
lpOutput[],ref string lpDevMode) LIBRARY \"winspool.drv\" Alias for \"DeviceCapabilitiesA\"

と宣言及び定義してあります。

何か足りないのでしょうか・・
知っていらっしゃったらご教授よろしくお願いいたします。


付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows 2000
DBMS Oracle SQL*Net 8
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS Oracle 8.0
WebServer (記載なし)

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