PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
13880 | 00/11/10 14:27:48 | RE(4):PB7.0: Windows2000でのOpenPrinter()APIの使用 By Taka |
13879 | 00/11/10 13:12:38 | RE(3):PB7.0: Windows2000でのOpenPrinter()APIの使用 By Qoo |
13877 | 00/11/09 20:04:17 | RE(2):PB7.0: Windows2000でのOpenPrinter() APIの使用 By M.M |
13862 | 00/11/09 12:52:41 | RE(1):PB7.0: Windows2000でのOpenPrinter()APIの使用 By Taka |
13848 | 00/11/08 21:37:04 | PB7.0: Windows2000でのOpenPrinter()APIの使用 By miho |
カテゴリ:印刷処理
日付:2000年11月09日 20:04 発信者:M.M
題名:RE(2):PB7.0: Windows2000でのOpenPrinter() APIの使用
mihoさん、こんばんは。
>WindowsAPIを使っているのですが、Windows2000上でうまく動きません。
>
>Windows98上で以下のスクリプトを実行すると、OpenPrinter()は正常に実行されるのですが、
>Windows2000上で同じスクリプトを実行してもエラーになります。(戻り値0)
実験君してみました。
W2Kが手元に無いのでNT4.0WSの環境で試したところ、問題なく動作しました。
以下のスクリプトで、W2Kの動作を試してみてください。
???????????????????????????????????
[検証環境]
OS: NT4.0 SP6a
PB: PB5.0.04
????????????????????????????????????
[外部関数の定義]
function boolean OpenPrinter(ref string lpszPrinter, &
ref ulong lphPrinter, &
ref string lppd) &
library \"winspool.drv\" alias for \"OpenPrinterA\"
function uLong GetLastError() library \"Kernel32.DLL\"
????????????????????????????????????
[スクリプトの記述]
boolean bRet
uLong lRet
string printerDeviceName //プリンタデバイス名
uLong printerHandle //プリンタハンドル
string lstr_printerdefaults //プリンタデフォルト構造体(Nullを指定可)
printerDeviceName = \"\\\\NSVR1\\FUJITSU XL-5700\" //ネットワークプリンタ名
setNull(lstr_printerdefaults)
bRet = OpenPrinter(printerDeviceName, printerHandle, lstr_printerdefaults)
if bRet then
messageBox(\"Information\",\"成功~r~nPrinterHandle = \"+string(printerHandle))
else
lRet = GetLastError()
messageBox(\"Error\",string(lRet))
end if
????????????????????????????????????
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows 2000
DBMS (記載なし)
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.