過去の桐井戸端BBS (桐ver.9)
20363 指定したフォルダがなければ作成しあればそのフォルダーにファイルを複写するという一括処理を作りたい masayuki 2003/05/15-23:43
アプリケーションをインストールするときに、指定したフォルダがなければ作成し、
あれば、そのフォルダにインストールを開始する。

こんな処理を桐で行いたいのですが、

一括処理で作るにはどうやればいいのですか。
よろしくご指導ください。
20364 Re:フォルダー作成はどうするんですか 通りすがり 2003/05/16-00:11
記事番号20363へのコメント
-----HTML Help から-----
フォルダ作成
コマンドの別名 mkdir
イベントでの使用 ○可能

■説明
指定したフォルダを新規作成します。
フォルダ名が、ドライブ名または \ からはじまっていない場合は、現在のデータパスからの相対指定になります。
指定したフォルダがすでに存在する場合は、なにもしません。

■記述例
「C:\K3」フォルダの中に「web」フォルダを作成します。
フォルダ作成 "C:\K3\web",終了状態 = &OK

現在のデータパスの下に「My Data」という名前のフォルダを作成します。
フォルダ作成 "My Data",終了状態 = &OK

20365 Re:フォルダー作成はどうするんですか masayuki-2 2003/05/16-00:16
記事番号20363へのコメント
masayukiさん 初めましてmasayuki-2と申します。
>
>アプリケーションをインストールするときに、指定したフォルダがなければ
>作成し、あれば、そのフォルダにインストールを開始する。
>
>こんな処理を桐で行いたいのですが、
>
>一括処理で作るにはどうやればいいのですか。
>よろしくご指導ください。

桐で作ったアプリケーションの事でしょうか?それとも他のアプリケーションをインストールするときでしょうか?
他のアプリケーションの場合、普通はインストーラーがデフォルトのフォルダをつくりインストールするはずですが?
桐で作ったアプリケーションをインストールする場合でしたら
インストール専用のフォームを作りイベントでするか一括を組まれれば可能です。
あまりにもアバウトな質問なのでもう少し詳しくやりたい事をお教えください。

20366 Re:フォルダー作成はどうするんですか 悲しげ 2003/05/16-00:34
記事番号20365へのコメント
masayukiさん、masayuki-2さん

>アプリケーションをインストールするときに、指定したフォルダがなければ
>作成し、あれば、そのフォルダにインストールを開始する。
>
>こんな処理を桐で行いたいのですが、

「こんな処理」とは「アプリのインストール」そのものではなくて、
その後の方、即ち「指定したフォルダがなければ作成し、あれば、
そのフォルダに…」だけの指すのではないかと私は受け止めました。

で、「そのフォルダにインストールを開始する。」の部分はせいぜい、
ファイル複写くらいではないかと……これは読み過ぎかな? (^^;)

20371 Re:フォルダー作成はどうするんですか masayuki 2003/05/16-08:52
記事番号20366へのコメント
大変説明不足で申し訳ありません。

>「こんな処理」とは「アプリのインストール」そのものではなくて、
>その後の方、即ち「指定したフォルダがなければ作成し、あれば、
>そのフォルダに…」だけの指すのではないかと私は受け止めました。
>
>で、「そのフォルダにインストールを開始する。」の部分はせいぜい、
>ファイル複写くらいではないかと……これは読み過ぎかな? (^^;)

そのとおりです。
説明として、アプリのインストールを例としただけです。

一括処理で、フォルダがあればそのフォルダに、ファイル複写し
なけでば、フォルダをつくってファイル複写をする。

このフォルダがあるかないかの判断はどうやってすればいいのか

よろしくご指導ください。


20373 Re:フォルダー作成はどうするんですか 悲しげ 2003/05/16-11:33
記事番号20371へのコメント
どもっ、masayukiさん

>このフォルダがあるかないかの判断はどうやってすればいいのか

#20364で(このところ通りすがらないで常駐しているところの)
通りすがりさんがコメントしているとおりです。

「フォルダ作成」コマンド自体の中に、そのフォルダの既存の
有無検索が内包されています。無ければ新規作成するし、
既存なら「何もしない」旨が書かれていますでしょ?
だから有っても無くても「フォルダ作成」コマンドを使えばいい訳で、
あとは、当該フォルダにファイル複写すればよいだけかと。

 フォルダ作成 "C:\K3\web",終了状態 = &実行リターン
 ファイル複写 "*.bak","C:\K3\web",終了状態 = &実行リターン

とか・・・・。

20374 Re:フォルダー作成はどうするんですか 悲しげ 2003/05/16-11:45
記事番号20373へのコメント
「同名のフォルダがすでに存在」していた場合にはファイル複写をしないのであれば、

 フォルダ作成 "C:\K3\web",終了状態 = &実行リターン
 条件(&実行リターン=134) ファイル複写 "*.bak","C:\K3\web",終了状態=&実行リターン

とか(但し挙動未確認)。

20375 Re:フォルダー作成はどうするんですか 悲しげ 2003/05/16-11:47
記事番号20374へのコメント
#20374訂正(^^;)

「同名のフォルダがすでに存在」していた場合にはファイル複写をしないのであれば、

 フォルダ作成 "C:\K3\web",終了状態 = &実行リターン
 条件(&実行リターン<>134) ファイル複写 "*.bak","C:\K3\web",終了状態=&実行リターン

とか(但し挙動未確認)。

※#20374は削除しておいて下さい。

20376 Re:フォルダー作成はどうするんですか うにん 2003/05/16-11:59
記事番号20375へのコメント
116 同名のファイルがすでに存在する。
というエラーもあるので一応考慮しておいた方がいいでしょう。
フォルダ作成コマンドの結果が
0 コマンドは正常に終了した。

134 同名のフォルダがすでに存在する。
の時以外はそのフォルダは使用できないと考えればいいかな?

戻る