• 締切済み

ファイルの所有者の取得&設定

VB2005初級者です。 ファイルの所有者の取得&変更は出来ますでしょうか? "c:\aaa.txt"の所有者を『User1』⇒『User2』なんて処理です。 <System.Security.AccessControl>あたりが怪しそうなんですが、MSDNを見てもさっぱりです。 どなたかお判りになる方宜しくお願いします。

みんなの回答

noname#44015
noname#44015
回答No.1

WindowsについているCACLSコマンドを内部で呼び出してはいかがでしょうか? しかし,CACLSコマンドでは特殊なアクセス権を設定できないので,その必要が ある場合はXCACLS.VBSを用いると良いでしょう. また,Vistaの場合はXCACLSと同等(?)の機能を提供するICACLSコマンドが あるようです.

参考URL:
http://support.microsoft.com/kb/825751/ja
mos_cheese
質問者

お礼

回答有難うございます。 なるほど、その手があったかという感じです。 今日、試してみます。またご報告します。

mos_cheese
質問者

補足

結果報告です。 やはり、『CACLS』では、所有者の変更は出来ないようです。 『XCACLS.VBS』は出来そうなのですが、、、 敷居が高そうなので今回は諦めます。

関連するQ&A

  • テキストファイルに書き込めない(ファイルの所有者と実行者の違いか?)

    テキストファイルにログを書き込む以下の処理があります。 aaa.pl -------------------- open Log,">>aaa.txt"; print Log 'test'; close Log; Web上(アパッチ)からこのaaa.plを実行すると 正常に処理されて、aaa.txtに書き込まれます。 (aaa.txtのオーナーはwww。属性は644) それとは別に、/etc/aliasesに 特定のメールアカウントにメールが送られた時に このaaa.plが実行されるように設定しているのですが mail_address: "|/ccc/aaa.pl" (パスは適当ですが、実際にはあっています) こちらからaaa.plが処理させても、 aaa.txtに文字列が書き込まれなくて困っています。 open Log,">>aaa.txt"; chmod 666,"aaa.txt"; ... とPerl側でパーミッションを変更させようとしても うまく変更されていません。処理もされません。 おそらくaliasesに設定したPerlの実行権限者が ファイルの所有者(この場合www)と異なる為 書き込みもchmodもうまくいかないと思うのです。 aliasesで実行させるアカウントは いったいどのようなアカウントなのでしょうか(binユーザーとか?) また、これを回避するにはどのようにすればよろしいでしょうか? どなたかご存知の方、どうぞよろしくお願い致します。

    • ベストアンサー
    • Perl
  • ファイルの「作成日・更新日」の変更

    VBにて「ファイルの作成日付、最終変更日付」の 取得と変更を行いたいのですが やり方がわかりません。 MSDNを検索したのですが Visual C++ に GetStatus という物があり、ファイル ステータスを取得できるとあったのですが VBには、そのような物は、無いのでしょうか? やりたい事は、 既存の「A.txt」というのがある VBにて作成した「B.txt」というファイルある A.txtの作成日と更新日を読み込んで B.txtの作成日を変更したい といった具合です。 宜しくお願いします。

  • ファイル削除の際の所有権取得または監査設定の変更のやり方を教えてくださ

    ファイル削除の際の所有権取得または監査設定の変更のやり方を教えてください。 WindowsXP sp3 (home)を使っています 数日前からOSインストールしているドライブではない別のドライブでi386ファイルを削除しようと思っているのですが下記のセキュリティの表示が出てきました。 セキュりティ i386の現在のアクセス許可の設定を表示または編集するアクセス許可はありますが、所有権を取得するかまたは監査設定を変更することができます 上記のファイルの所有権取得または監査設定の変更のやり方を教えていただきたいです。

  • chownでファイル所有者なのに別の所有者に変更できない

    SunOS 5.10を使っていますがchownでファイルの所有者変更をしたいのですが、所有者で実行しても「所有者ではありません。」とメッセージがでてエラーとなります manで見ると 「ファイルの所有者(またはスーパーユーザー)だけが、ファイルの所有者を変更できます。 オペレーティングシステムは所有者の変更を制限するコンフィギュレーションオプション{_POSIX_CHOWN_RESTRICTED}を持っています。 このオプションが有効なときは、ファイルの所有者はそのファイルの所有者IDを変更することができません。 このオプションに関係なく、スーパーユーザーだけが所有者IDを変更できます。コンフィギュレーションオプションを設定する場合は、 /etc/systemファイルに次の行を挿入してください。 set rstchown = 1 このオプションを無効にする場合は、/etc/system ファイルに次の行を挿入してください。 set rstchown = 0 デフォルトでは{_POSIX_CHOWN_RESTRICTED}は有効です。system(4)とfpathconf(2)を参照してください。」 と書いてあり所有者でも使えそうですが、使える方法がmanで見てもわかりません。

  • バッチファイルのエラー処理

    困っています。 下記の様な3つで1セットのコピーをバッチで行いたいと考えています。 ◇1 c:\aaa.txt d:\a:\aaa.txt c:\aaa.txt d:\B:\aaa.txt c:\aaa.txt d:\C:\aaa.txt ◇2 c:\bbb.txt d:\a:\bbb.txt c:\bbb.txt d:\B:\bbb.txt c:\bbb.txt d:\C:\bbb.txt ここで、エラー処理を加えて、 c:\aaa.txt d:\a:\aaa.txt がエラーになったら c:\aaa.txt d:\B:\aaa.txt c:\aaa.txt d:\C:\aaa.txt の処理をスキップし、別ファイルに「aaa.txtのコピーを中止しました」と書込み次のファイル「c:\bbb.txt」のコピーを行う。 何度試しても、うまく動きません。 って言うか全然だめです。 誰か教えてください。お願いします。

  • FTPでのファイル取得について

    Linaxサーバ上に、 /aaa というフォルダがあり、 そのフォルダの中に C:\Documents and Settings\bbb.txt というファイルがあるとします。 このファイルをWindowsクライアント上にFTPでダウンロードしたいのですが・・・ Settings\bbb.txt という、最後のスペース以降しか取得できないようで、どなたかご存知の方がおられましたら、よろしくお願い致します。

  • フォルダ内のファイル存在監視する常駐プログラム

    あるフォルダ内に、あるファイルの存在を監視して、存在するとある処理を実行するような常駐型の監視プログラムをどのようにすればよいか教えてください。 ファイルはフォルダ内に複数存在する場合があり、古いもの順に取得し処理していきたいのです。 フォルダ名:c:\test\ ファイル名:aaa2009090415001234.txt (1)       aaa2009090416001234.txt (2)  とあると、(1)→(2)の順で処理したい。 aaaYYYYMMDDHHMMSS.txt の形式ファイル Windows系で、できればVBSがいいです。 サンプルコードまたは流れなどがわかれば幸いです。 よろしくお願いします。

  • クラスパス配下のファイル名一覧取得

    ある、クラスパスの通ったフォルダ(仮にdir)があったとして そのフォルダ内にあるファイル名一覧を取得したいと考えております。 dir/ ->a.txt ->b.txt ->c.txt 結果:a.txt、b.txt、c.txt ClassLoader クラスなどを用いて取得しようと考えたのですが、 getSystemResource() メソッドなどはファイル名まで指定しないと 取得できないみたいで、現時点で望む処理ができない状態です。 フォルダまでの絶対パスの指定はしたくないため、 Fileクラスも使用できない状態です。 このような処理をやったことがある方は、 どうかご教授お願いいたします。

  • アクセス制限と所有者設定の再設定

    アクセス制限と所有者設定の再設定 Windows7(64bit) Home Premiumを使用しています。 C:\Users\xxx\のアクセス制限と所有者設定を変更したところ、ショートカットやアプリケーションの設定等が正しく読み込まれなくなりました。 メール内容やブラウザの設定も読み込まなく、自動的な書き込みもされていないようなので、確実に直したいと思っています。 ・該当フォルダの現在のセキュリティ設定は以下のようになっています。 SYSTEM :フルコントロール HomeUsers : 特殊 xxx(ユーザー名) : フルコントロール Administrators : フルコントロール ・該当フォルダの現在の所有者設定は以下のようになっています。 xxx(ユーザー名) また、xxx(ユーザー名)のフォルダのプロパティをみると、読み取り専用のチェックが塗りつぶされ変更することができません。 ・問題が発生する直前に行った操作は、 セキュリティ設定のxxx(ユーザー名)以外を削除する 所有者設定を何度か変え、xxx(ユーザー名)にする です。 作業中、何度もアクセスが拒否され、続行ボタンをクリックしましたが、キャンセルもしたため整合性がとれていないかもしれません。 所有者設定では、意味をよく理解しないまま「サブコンテナーとオブジェクトの所有者を置き換える」にチェックを入れていました。 またシステムの復元で解決しないかと思い、3日前に自動的に作られた復元ポイントに復元を試しました。 結果、デスクトップのショートカットは正しく動くようになりましたが、アプリケーションの設定やメールは機能していません。

  • テキストファイル操作

    VB6ですが、Aというフォルダに書き込まれた050416110311AAA.txt(050416110311は書き込まれた時間で違う)ファイルをBというフォルダのAAA.txtに追加書き込むやり方教えて頂きますか?

専門家に質問してみよう