[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2005/01/25(Tue) 15:08
投稿者名:コルク
Eメール:
URL :
タイトル:
存在しないフォルダにファイルをコピー
FileCopy命令で、コピー先に存在しないフォルダを指定するとエラーになりますが、
これを自動で作ってくれるような方法はありませんか?
split関数でコピー先の文字列を"\"で区切ってみましたがうまくいきませんでした(TT)

投稿時間:2005/01/25(Tue) 15:18
投稿者名:ぬき
Eメール:
URL :
タイトル:
Re: 存在しないフォルダにファイルをコピー
> FileCopy命令で、コピー先に存在しないフォルダを指定するとエラーになりますが、
> これを自動で作ってくれるような方法はありませんか?
> split関数でコピー先の文字列を"\"で区切ってみましたがうまくいきませんでした(T
T)

hhttp://www.bcap.co.jp/hanafusa/VBHLP/filesousa.htm#mkdir
自分で探して無ければ作る!の基本姿勢がプログラマ

投稿時間:2005/01/26(Wed) 09:43
投稿者名:だい
Eメール:dee_bassist@hotmail.com
URL :
タイトル:
Re: 存在しないフォルダを作成

APIでよいなら、
Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" (ByVal DirPath As String) As
Long

Function MakeSurePath(strdir As String) As Long
    MakeSurePath = MakeSureDirectoryPathExists(strdir)
End Function

とした場合に

MakeSurePath("D:\TEMP\TEST\aaa\bbb.txt")
を実行すると
D:\TEMP\TEST\aaa
が勝手に作成されます。

投稿時間:2005/01/26(Wed) 10:04
投稿者名:魔界の仮面弁士
Eメール:
URL :
タイトル:
Re^2: 存在しないフォルダを作成
> Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" (ByVal DirPath As String) As Long

その API は、&H5Cを含むパス (たとえば、C:\管理表\1月分\〜 の"表"の文字など) が
含まれていると、フォルダが正しく作成されないという問題がありますので、気をつけてください。

# Win9X系のみ。NT系では正常に作成されます。