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年08月26日 15:25 発信者:innan-taka
題名:PB7.0: 特殊フォルダ(デスクトップ、スタートメニュー)の取得について

現在PoweBuilderでインストーラーを作成しています。
スタートメニューとデスクトップにショートカットを自動作成すためにディレクトリパスを取得しようと
以下のように記述しましたが、うまく取得できません。

//グローバル関数
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

//特殊フォルダのItemIDListのポインタを取得する
lngRet = SHGetSpecialFolderLocation(0, 22, pidlFolder)   
//ItemIDList のポインタからフォルダの名前を取得する
SHGetPathFromIDList(pidlFolder, strBuf1)
//タスクメモリブロックを解放する
CoTaskMemFree(pidlFolder)

messagebox(\"test\",strBuf1)


上記プログラムを実行すると、
「ents and Settings\\All Users\\デスクトップ」と返したり、何度か実行していると、不正な処理で強制終了してし
まいます。
どうかよろしくお願いします。




付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows 2000
DBMS Microsoft SQL Server Client 6.5
Browser (記載なし)

Server SoftWare

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

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