/ /「このプログラムで常に開く」の設定方法-vb.net

どのように "常にこのプログラムで開く"を設定する - vb.net

「.mp3ファイルタイプを常にこのプログラムでデフォルトで開くように設定しますか?」 (初めてのみ)これを行う例はありますか?

回答:

回答№1は4

まず、Windowsレジストリに慣れる必要があります。

プログラムと拡張機能間の関連付けは、HKEY_CLASSES_ROOTキー内で処理されます。 各拡張子はサブキーとして表示されます。

各キーのデフォルト値として、現在サポートされている特定のファイルタイプのほとんどの操作を処理する関連キーがあります。

たとえば、を見つけることができます。VLCをインストールしてデフォルトのMP3プレーヤーとして設定した場合、mp3のデフォルト値は「WMP11.AssocFile.MP3」に設定されるか、「VLC.mp3」に設定される可能性があります。 そのため、HKEY_CLASSES_ROOT内で再びそのキーを見つける必要があります。

これは異なる場合がありますが、「VLC。mp3 "(または.mp3拡張子に関連付けられたキー)には、" shell "というサブキーがあります。 「シェル」の下に、「開く」という別のサブキーがあります。 そして最後に、「開く」の下に「コマンド」と呼ばれる別のサブキーが表示されます。

「コマンド」キーは、「。mp3」(またはその他の)拡張子に現在関連付けられているアプリケーションを開いたり起動したりするために、Windows(および他のプログラム)が使用する情報を含むキーです。

レジストリで関連付けが処理される方法を理解し、快適に感じたら、.NET "を使用する必要があります。 Microsoft.Win32必要なキーとその値をナビゲートおよびクエリするレジストリクラス。

コードがどのように見えるかを示す非常に基本的な図を次に示します。

Dim mp3 = Registry.ClassesRoot.OpenSubKey(".mp3")
Dim associatedValue = mp3.GetValue("")
Dim associatedKey = Registry.ClassesRoot.OpenSubKey(associatedValue)
Dim defaultProgram = associatedKey.OpenSubKey("ShellOpenCommand").GetValue("")

MsgBox("MP3 Files Are Opened Using: " + vbCrLf + defaultProgram)

お役に立てれば...


回答№2の場合は1

ファイルの関連付けを設定する必要があります。コードプロジェクトのこの記事を参照してください VB.NETでファイルの関連付けを設定する.


回答№3の場合は0

インポートして宣言した後、エラーが再び表示されます

Dim rgText As Registry.ClassesRoot.OpenSubKey(".txt")

エラーは次のようになります。

タイプ「Registry.ClassesRoot.OpenSubKey」は定義されていません。