PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
20409 | 03/10/09 11:09:21 | RE(7):PB7.0: 特殊フォルダ(デスクトップ、スタートメニュー)の取得について By itameya |
20405 | 03/10/09 00:35:39 | RE(6):PB7.0: 特殊フォルダ(デスクトップ、スタートメニュー)の取得について By isii |
20403 | 03/10/08 18:01:28 | RE(5):PB7.0: 特殊フォルダ(デスクトップ、スタートメニュー)の取得について By itameya |
20400 | 03/10/08 17:52:38 | RE(4):PB7.0: 特殊フォルダ(デスクトップ、スタートメニュー)の取得について By hirotyan |
20398 | 03/10/08 17:29:53 | RE(3):PB7.0: 特殊フォルダ(デスクトップ、スタートメニュー)の取得について By itameya |
20192 | 03/08/27 08:48:23 | RE(2):PB7.0: 特殊フォルダ(デスクトップ、スタートメニュー)の取得について By innan-taka |
20189 | 03/08/26 17:03:09 | RE(1):PB7.0: 特殊フォルダ(デスクトップ、スタートメニュー)の取得について By hirotyan |
20187 | 03/08/26 15:25:10 | PB7.0: 特殊フォルダ(デスクトップ、スタートメニュー)の取得について By innan-taka |
カテゴリ:PowerBuilderの開発環境
日付:2003年10月08日 17:29 発信者:itameya
題名:RE(3):PB7.0: 特殊フォルダ(デスクトップ、スタートメニュー)の取得について
innan-takaさん、こんにちは。
便乗質問させてください。
デスクトップのPathの取得方法は
クローバル外部関数で
Function Long SHGetSpecialFolderLocation(long hwndOwner, long nFolder, ref long ppidl)
LIBRARY \"Shell32.dll\"
Function Long SHGetPathFromIDList(long pidl, String pszPath) LIBRARY \"Shell32.dll\" Alias
for \"SHGetPathFromIDListA\"
Function Long CoTaskMemFree(Long pv) LIBRARY \"Ole32.dll\"
を宣言し
何かのイベントで
long lngRet,pidlFolder
string strBuf1=Space(256)
//特殊フォルダのItemIDListのポインタを取得する
lngRet = SHGetSpecialFolderLocation(0, 22, pidlFolder)
//ItemIDList のポインタからフォルダの名前を取得する
SHGetPathFromIDList(pidlFolder, strBuf1)
//タスクメモリブロックを解放する
CoTaskMemFree(pidlFolder)
messagebox(\"test\",strBuf1)
を実行することでデスクトップのPathがメッセージボックスに出力されるということですよね?
私の環境で試すと、エラーはでませんが
メッセージボックスにはスペースが表示されてるだけのようで
何も表示されないのですが、
lngRet = SHGetSpecialFolderLocation(0, 22, pidlFolder)
の部分の第1,第2引数が間違っているのでしょうか?
こちらの引数に何を指定すべきか書かれているところはどこにあるのでしょうか
お教えください。
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows 2000
DBMS Microsoft SQL Server Client 6.5
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.