ファイルをダウンロードして、それが MD5 チェックサムであることを確認したいと思いました。7Zip のファイル コンテキスト メニュー出力には MD5 チェックサムが含まれていないため、Windows サイトから fciv.exe をダウンロードし、System32 フォルダーにコピーしました。
次に、カスタム コンテキスト メニュー項目を追加しようとするうさぎの穴に落ちました。Computer\HKEY_CLASSES_ROOT*\shell のレジストリを変更し、その下にコマンド キーを含む MD5 キーを追加しcmd /k fciv.exe "%1"
て、解決策として実行できることを確認しました。
しかし、さらに進んで、VB スクリプトを使用して、コンソールを開くのではなく、単純なメッセージ ボックスに出力を送信したいと考えました。私は次のようにここにコードを見つけました:
Option Explicit
Const WshRunning = 0
Const WshFinished = 1
Const WshFailed = 2
Dim shell : Set shell = CreateObject("WScript.Shell")
Dim exec : Set exec = shell.Exec("fciv.exe filename-from-right-click")
While exec.Status = WshRunning
WScript.Sleep 50
Wend
Dim output
If exec.Status = WshFailed Then
output = exec.StdErr.ReadAll
Else
output = exec.StdOut.ReadAll
End If
WScript.Echo output
これは私が立ち往生した場所でした:
スクリプトを実行しようとしても、右クリック メニューから利用できるファイル パスを使用するようにスクリプトを調整する方法がわかりません。
コンテキスト メニューを使用してスクリプトを実行しようとしても、Windows は「このアプリはお使いの PC では実行できません」というポップアップでブロックします。
助言がありますか?テキストをコピーできるダイアログ ボックスの場合はボーナス ポイントです。前もって感謝します!