• ベストアンサー

C# 特殊ディレクトリを変更したいのだが

お世話になります。 C#(.net)で、スタートメニューから開ける『ミュージック』や 『ビデオ』といった、いわゆる特殊ディレクトリと呼ばれるものですが、 取得するのは、System.Environment.GetFolderPath(Environment.SpecialFolder.Personal) (これはドキュメントですが)等でできますが、 特殊ディレクトリをコードで変更することは可能でしょうか。 方法がありましたら、教えてください。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • samtomsan
  • ベストアンサー率55% (1060/1897)
回答No.3

> その方法をC#で記述するには、どのようにすればよいでしょうか 「C# レジストリ」で検索してみてください。 多くの情報が得られます。 例えば下記などが参考になるかと思います。 http://fernweh.jp/b/csharp-regedit/ http://dobon.net/vb/dotnet/system/registrykey.html http://ch.nicovideo.jp/laz/blomaga/ar471835

tatapatank
質問者

お礼

いろいろとありがとうございました。 少し難しそうですがね試してみたいと思います。 また何かありましたらよろしくお願いいたします。

その他の回答 (2)

  • samtomsan
  • ベストアンサー率55% (1060/1897)
回答No.2

> 例えば、今『ミュージック』が『c:\document\music』だったものを 『c:\sample\a\b\mymiusic』等に変更するということです。 この情報はレジストリに書かれていますから、レジストリを書き直すことになると思います。 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders レジストリを書き直すと他のプログラムにも影響しますから、その辺りはどうするのか考えて置く必要があります。 上記以外にも登録されているレジストリがありますから、それをどうするかも考えて置く必要がありますね。 間違っていたらごめんなさい。

tatapatank
質問者

補足

度々すみません。 その方法をC#で記述するには、どのようにすればよいでしょうか。

  • samtomsan
  • ベストアンサー率55% (1060/1897)
回答No.1

> 特殊ディレクトリをコードで変更する 質問の意味が判らないのですが、使う前にpathを変更しておいてGetFolderPathで変更したpathを取るということでしょうか。 そうであればpathが記録されているレジストリを書き換えないといけないと思いますが。 あるいは(Environment.SpecialFolder.Personal)を例えば(MySpecailDocument)に変えたいということでしょうか。

tatapatank
質問者

補足

質問の説明が不足しており、申し訳ありません。 手動では、ビデオやミュージックのディレクトリの場所を 自由に変えられるのですが、それをコードで行えればということです。 例えば、今『ミュージック』が『c:\document\music』だったものを 『c:\sample\a\b\mymiusic』等に変更するということです。

関連するQ&A

専門家に質問してみよう