C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: コマンドラインからファイルを移動


(過去ログ 135 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■79591 / inTopicNo.1)  コマンドラインからファイルを移動
  
□投稿者/ C#データ観測者 (3回)-(2016/04/16(Sat) 19:36:53)

分類:[.NET 全般] 

Processからcmd.exeを経由してforfilesコマンドでテキストファイルのコピーや移動を行っています。
コピーした時にACL情報等ののもコピーできているか確認したいのですが、.netにそのような機能はあるのでしょうか。

今後もcmd.exeをつかったファイルを移動、コピー、削除するプログラムを開発する予定があるのですが、
・cmd.exeの使用はPCユーザーが決められる。
・ACLの設定に左右されやすい
・そもそもプログラムからコマンドを実行するのは権限としてどうなのか。
という方もいるので、それらのことも調べたいのですが、今はこのままコマンドをつかって
どのような不都合が起こるのかわかりません。
このままコマンドでファイルを移動する方法を進める場合はどのような情報を集めればよいのでしょうか。
引用返信 編集キー/
■79593 / inTopicNo.2)  Re[1]: コマンドラインからファイルを移動
□投稿者/ Azulean (633回)-(2016/04/16(Sat) 23:19:09)
2016/04/16(Sat) 23:19:59 編集(投稿者)

何を聞きたいのか、イマイチ把握しかねるのですが…。

No79591 (C#データ観測者 さん) に返信
> コピーした時にACL情報等ののもコピーできているか確認したいのですが、.netにそのような機能はあるのでしょうか。

コピー時にアクセス許可リストも一緒にコピーするとなると、割と面倒くさいことになると思われます。
https://msdn.microsoft.com/en-us/library/system.io.directoryinfo.setaccesscontrol.aspx

アクセス許可リストをチェックしたいというのであれば、GetAccessControl からでしょうか。
(実際にコードを書いたことはないので、その実現性についての詳細はコメントしかねます)


> ・cmd.exeの使用はPCユーザーが決められる。

この観点はよくわかりませんが…。


> ・ACLの設定に左右されやすい

左右されるのは cmd 経由であろうと、自作プログラムであろうと同じことかと思います。


> ・そもそもプログラムからコマンドを実行するのは権限としてどうなのか。

権限はプログラムを実行するユーザーの権限と同じなので、権限(ロール)としては問題にならないかと。


> という方もいるので、それらのことも調べたいのですが、今はこのままコマンドをつかって
> どのような不都合が起こるのかわかりません。

cmd に限らず、別プロセスに処理を委譲する仕組みである以上、細かな制御が難しい、キャンセル時の動きや進捗表示などで手間がかかるといったことは予想されます。
また、プロセスが kill された、落ちた場合、エラーが起きた場合にどうするかといった連携も手間取る可能性もあります。


> このままコマンドでファイルを移動する方法を進める場合はどのような情報を集めればよいのでしょうか。

やりたいこと、あるいはその具体的なコマンド、使いたいと思うクラスを絡めて検索することでしょう。
もし、プロセス起動や標準入出力に絡んでどんなクラスがあるかもわからない段階であれば、順序立てて説明している書籍、あるいは逆引きで説明している書式、.NET サンプルコードを公開しているサイトをひたすら読みまくっていただくのが1つの手かと思います。
引用返信 編集キー/
■79594 / inTopicNo.3)  Re[2]: コマンドラインからファイルを移動
□投稿者/ C#データ観測者 (5回)-(2016/04/17(Sun) 10:41:15)
ありがとうございます。参考になりました。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -