PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
1050 | 98/03/26 17:56:57 | RE(13)::複数ファイル処理です By てとらぽっと |
1047 | 98/03/26 10:26:10 | RE(12):複数ファイル処理です By nari |
1046 | 98/03/26 10:22:49 | RE(11):なんとかできました&サンプルスクリプト By nari |
1042 | 98/03/25 16:59:36 | RE(10):複数ファイル処理です By てとらぽっと |
1040 | 98/03/25 16:40:01 | RE(9):おめでとうございます!!! By Taka |
1039 | 98/03/25 16:10:31 | RE(8):なんとかできました&サンプルスクリプト By てとらぽっと |
1024 | 98/03/24 22:15:40 | RE(7):pbm_dropfiles がアヤシイと思う By Taka |
1018 | 98/03/24 18:25:02 | RE(6):MDIフレームにファイルをドロップしたい(APIの質問) By nari |
1017 | 98/03/24 18:22:33 | RE(5):MDIフレームにファイルをドロップしたい(APIの質問) By nari |
1006 | 98/03/24 12:20:36 | RE(4):コールできました、あ、エラー? By てとらぽっと |
992 | 98/03/23 18:56:28 | RE(3):コールできました、あ、エラー? By Taka |
987 | 98/03/23 18:26:45 | RE(2):コールできました、あ、エラー? By てとらぽっと |
970 | 98/03/23 13:01:28 | RE(1):ムム、やってますね? By Taka |
967 | 98/03/23 12:09:31 | MDIフレームにファイルをドロップしたい(APIの質問) By てとらぽっと |
カテゴリ:旧電子会議室
日付:1998年03月25日 16:10 発信者:てとらぽっと
題名:RE(8):なんとかできました&サンプルスクリプト
なんとかできました! Takaさん、nariさん、ありがとうございました。
間違い1.
ファイルのインデックス(第2引数)ですが、よく考えると配列の始まりは 0 かな、と与えてみますと正解でした。
間違い2.
正体が判らない HDROP(第1引数)に Handle を与えていたのですが、正解は Message.WordParm でした。
DropFileイベントの引数にもなっているし、てっきりこれだと思い込んでいました。
Takaさんの発言>でも、肝心の Handle パラメータが、常にゼロじゃありません?
これも早いうちに気づいていたのですが、結果的に因果関係はなかったですね。(^^;
???3.
プロトタイプ宣言が UINT DragQueryFile(HDROP hDrop, UINT iFile, LPTSTR lpszFile, UINT cch)
だったため、UINTを Unsigned Long にしていたのですが、Win32 APIリファレンス(ASCII)を立ち読みしますと、
VBの宣言では As Long となっていました。試してみたら Long でも Unsigned Long でも動いてしまった。
以下にサンプルを挙げておきます。
スクリプトが長くなるので、複数ファイルをつかんで落とす処理は書いていません。
-- 外部関数の宣言 -------------------------------------------------------------
Function long DragAcceptFiles(long handle, boolean fAccept) library \"SHELL32.DLL\"
Function long DragQueryFileA( long hDrop, long iFileIndex, ref string szFileName, long cch) library \"SHELL32.DLL\"
SUBROUTINE DragFinish(long hDrop) library \"SHELL32.DLL\"
-- Open(等、初期化)のイベント --------------------------------------------------
DragAcceptFiles(Handle(This), True)
-- イベントID pbm_dropfiles ------------------------------------------------------
string ls_FileName
long ll_hDrop
long ll_BufSize
long ll_FileIndex
ll_hDrop = Message.WordParm
ll_FileIndex = 0
ll_BufSize = 255
ls_FileName = Space(ll_BufSize)
DragQueryFileA(ll_hDrop, ll_FileIndex, ls_FileName, ll_BufSize)
DragFinish(ll_hdrop)
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS (記載なし)
DBMS (記載なし)
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.