ファイルの出力時の保存先について。No.01100
櫻井章一 さん 05/03/15 12:19
 
秀丸マクロでcsv形式で保存するときに
現在下記のように記述しています。
 $filename = input("保存ファイル名を入力してください。\n※保存先はCドライブ
直下です!!");
 $filename = "c:\\ "+ $filename + ".csv ";

Cドライブ保存でなく、デスクトップ保存にしたいのですが
例えばwin2000、winXPの場合
C:\Documents and Settings\ユーザ名\デスクトップ
となっていますので、デスクトップ保存にしたいときに
 $filename = "C:\\Documents and Settings\\ユーザ名\\デスクトップ\\"+ $filena
me + ".csv ";
上記のように記述すると実現できるのですが、これだとログインユーザによっては保
存パスが変ってしまうので
誰がログインしていても、各ログインユーザのデスクトップに保存できるような記述
方法はありますでしょうか?
もしよろしければ教えていただきたいのでよろしくお願いいたします。

[ ]
RE:01100 ファイルの出力時の保存先についNo.01102
秀まるお2 さん 05/03/16 12:59
 
 デスクトップ用フォルダの実際のフォルダ名は、WindowsのAPIを使えば取得す
ることが出来ます。具体的には

 SHGetSpecialFolderLocation

 という関数を使うことになります。(これだけでは足りませんが)

 他にいい方法はたぶん無いと思うので、だとしたら、そういうAPIを呼び出す
用のDLLを作らないとダメです。

 簡単なのでなんでしたら僕が作ってもいいですけど。

[ ]