テキスト ファイルに保存して locker.bat というラベルを付けるコードがあり、フォルダーを非表示にできます。しかし、問題は、右クリックして編集をクリックするとパスワードが見つかることです (下の方のパスワードは password_goes_here です)。ちなみに、これは Windows 8 です。
パスワードを他の人に見られないように隠すにはどうしたらいいでしょうか、あるいは他の人がパスワードを編集できないようにするにはどうすればいいでしょうか?
cls
@ECHO OFF
title Folder Private
if EXIST "HTG Locker" goto UNLOCK
if NOT EXIST Private goto MDLOCKER
:CONFIRM
echo Are you sure you want to lock the folder(Y/N)
set/p "cho=>"
if %cho%==Y goto LOCK
if %cho%==y goto LOCK
if %cho%==n goto END
if %cho%==N goto END
echo Invalid choice.
goto CONFIRM
:LOCK
ren Private "HTG Locker"
attrib +h +s "HTG Locker"
echo Folder locked
goto End
:UNLOCK
echo Enter password to unlock folder
set/p "pass=>"
if NOT %pass%== PASSWORD_GOES_HERE goto FAIL
attrib -h -s "HTG Locker"
ren "HTG Locker" Private
echo Folder Unlocked successfully
goto End
:FAIL
echo Invalid password
goto end
:MDLOCKER
md Private
echo Private created successfully
goto End
:End
答え1
オプション 1: コードをコンパイルできる適切なプログラミング言語を使用し、暗号化/難読化技術を採用して、パスワードが好奇心旺盛な人に簡単には見えないようにします。
オプション2: バッチからEXEへのコンバーターが使用できます。技術に精通したユーザーであれば、おそらく16進エディタ(またはテキストエディタや文字列ユーティリティを使用して実行可能ファイル内のプレーンテキストのパスワード文字列を表示することもできますが、平均的なユーザーには困惑するでしょう。
PS HTG Lockerはとにかく役に立たない。するフォルダーの +S 属性と +H 属性が設定されます。
答え2
可能ですが、後でプログラムを編集することができなくなります。
あなたがすべきことはこのユーティリティを手に入れることですこここれは EXE コンパイラへのバッチ ファイルであり、パスワードを非表示にしますが、コンパイル後に編集することはできません。
@EBGreen が指摘したように、パスワードを表示するには 16 進エディターのみが必要になります。
ただし、以前使用していた製品が 1 つありますが、これは有料です。以下で見つけることができます。この製品は暗号化と、EXE にコンパイルされるデコーダー モジュールを使用します。バッチ ファイルを変換する前に暗号化するため、これがパスワードを完全にマスクする唯一の現実的なオプションです。