質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Q&A

解決済

2回答

1624閲覧

PC(マイコンピュータ)に、フォルダを登録するRegistryの設定方法

cancat

総合スコア313

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

0グッド

0クリップ

投稿2017/02/19 12:01

こんにちは。  
Windows10でC#のアプリケーションを開発しています。  
Visual Studio 2015 Communityを使っています。  

##前提・実現したいこと
ExplorerのPCフォルダー(ダウンロードとかドキュメントとか)or デバイスとドライブに、C#で任意の(C:\Users\cancat\Documents\data)フォルダを登録しようとしています。

まずは、registryで、
http://www.winhelponline.com/blog/add-custom-folder-this-pc-navigation-pane-windows/
の手順に従って作業しています。

registry

1Windows Registry Editor Version 5.00 2 3[HKEY_CLASSES_ROOT\CLSID\{f86fa3ab-70d2-4fc7-9c99-fcbf05467f3a}] 4"DescriptionID"=dword:00000003 5"Infotip"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,\ 66f,00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,\ 700,73,00,68,00,65,00,6c,00,6c,00,33,00,32,00,2e,00,64,00,6c,00,6c,00,2c,00,\ 82d,00,31,00,32,00,36,00,39,00,30,00,00,00 9"System.IsPinnedToNameSpaceTree"=dword:00000001 10 11[HKEY_CLASSES_ROOT\CLSID\{f86fa3ab-70d2-4fc7-9c99-fcbf05467f3a}\DefaultIcon] 12@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\ 1300,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,69,00,6d,00,\ 1461,00,67,00,65,00,72,00,65,00,73,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,31,\ 1500,38,00,39,00,00,00 16 17[HKEY_CLASSES_ROOT\CLSID\{f86fa3ab-70d2-4fc7-9c99-fcbf05467f3a}\InProcServer32] 18@=hex(2):25,00,73,00,79,00,73,00,74,00,65,00,6d,00,72,00,6f,00,6f,00,74,00,25,\ 1900,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,00,68,00,\ 2065,00,6c,00,6c,00,33,00,32,00,2e,00,64,00,6c,00,6c,00,00,00 21"ThreadingModel"="Both" 22 23[HKEY_CLASSES_ROOT\CLSID\{f86fa3ab-70d2-4fc7-9c99-fcbf05467f3a}\Instance] 24"CLSID"="{0E5AAE11-A475-4c5b-AB00-C66DE400274E}" 25 26[HKEY_CLASSES_ROOT\CLSID\{f86fa3ab-70d2-4fc7-9c99-fcbf05467f3a}\Instance\InitPropertyBag] 27"Attributes"=dword:00000011 28"TargetKnownFolder"="{35286a68-3c57-41a1-bbb1-0eae73d76c95}" 29 30[HKEY_CLASSES_ROOT\CLSID\{f86fa3ab-70d2-4fc7-9c99-fcbf05467f3a}\ShellFolder] 31"Attributes"=dword:f080004d 32"FolderValueFlags"=dword:00000029 33"SortOrderIndex"=dword:00000000 34 35[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{f86fa3ab-70d2-4fc7-9c99-fcbf05467f3a}]

をtool.regで保存し、実行しました。

registryに登録はできたのですが、該当のページでは、
HKEY_CLASSES_ROOT{GUID}となっていますが、
HKEY_CLASSES_ROOT\CLSID{GUID}で、登録内容も、Defaultに値がないなど、異なっています。

どのようなレジストリにすればよいか、アドバイスお願いします。

よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

var RegistryKey = Microsoft.Win32.Registry.ClassesRoot.CreateSubKey("aaa");
RegistryKey.SetValue("Attributes", 0xf080004d);
RegistryKey.Close();

投稿2017/02/27 05:24

cancat

総合スコア313

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

パスに CLSID が抜けてるのは画像のステータスバー見ると分かる通りミスですね

(Default) が欲しいなら

[HKEY_CLASSES_ROOT\CLSID\{f86fa3ab-70d2-4fc7-9c99-fcbf05467f3a}] @="defaultName" "DescriptionID"=dword:00000003 "Infotip"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,\ 6f,00,74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,\ 00,73,00,68,00,65,00,6c,00,6c,00,33,00,32,00,2e,00,64,00,6c,00,6c,00,2c,00,\ 2d,00,31,00,32,00,36,00,39,00,30,00,00,00 "System.IsPinnedToNameSpaceTree"=dword:00000001

という感じで @ を追加します

投稿2017/02/19 15:39

lazex

総合スコア604

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問