請教批次檔
就是副檔名是.BAT 那個東東
我想寫支程式
執行一些例行性的批次動作
但是在一開始前
要加個密碼
就是進入批次程式前
RUN 一個密碼程式
當密碼正確時
才可以執行
若密碼錯誤時
則結束BAT 程式
請教: 該如何著手..
既然是
heyday提到:
例行性的批次動作
那密碼輸入這個流程不是挺怪的?! @@
<pre class="c" name="code">@echo off
:menu
cls
echo.
echo ================
echo.
echo 1.建立密碼
echo.
echo 2.執行程式
echo.
echo 3.更改密碼
echo.
echo ================
echo.
set /p me="請選擇: "
if "%me%"=="1" goto pwd1
if "%me%"=="2" goto pwd2
if "%me%"=="3" goto pwd5
cls
echo.
echo 輸入錯誤 請重新選擇
echo.
pause
goto menu
:pwd1
if not exist pd goto pwd3
if exist pd goto pwd4
goto end
:pwd2
cls
set pwd=""
set time=5
echo.
echo 請輸入你建立的密碼...
echo.
Set /p PWD="請輸入密碼: "
if %pwd%=="" goto pwd7
attrib -h -r pd1 >nul
echo %pwd% >pd1
attrib +h +r pd1 >nul
fc pd pd1 >nul
if errorlevel 2 goto pwd7
if errorlevel 1 goto pwd7
if errorlevel 0 goto pwd6
goto end
:pwd3
cls
set pd=""
echo.
echo 請輸入要建立的密碼...
echo.
set /p pd="請輸入新密碼: "
if %pd%=="" goto pwd8
attrib -h -r pd >nul
echo %pd% >pd
attrib +h +r pd >nul
goto menu
:pwd4
cls
echo.
echo 請輸入你的舊密碼
echo.
set /p pd2="請輸入舊密碼: "
attrib -h -r pd2 >nul
echo %pd2% >pd2
attrib +h +r pd2 >nul
fc pd pd2 >nul
if errorlevel 2 goto pwd7
if errorlevel 1 goto pwd7
if errorlevel 0 goto pwd3
goto end
:pwd5
if not exist pd goto pwd3
if exist pd goto pwd4
goto end
:pwd6
echo.
echo 『把要執行的程式放在這裡(pwd6)!!!』
echo.
goto end
:pwd7
cls
echo.
echo ************************************
echo * *
echo * 密碼錯誤 請重新輸入正確的密碼! *
echo * *
echo ************************************
echo.
echo.
pause
goto menu
:pwd8
cls
echo.
echo ************************************
echo * *
echo * 密碼空白 請重新輸入正確的密碼! *
echo * *
echo ************************************
echo.
echo.
pause
goto menu
:end
試看看這個 把密碼放在其他的檔案裡並隱藏起來
在用比對的方式 來驗證密碼
密碼建立起來後 直接在 @echo off 底下加入 goto pwd2
就不會在出現選單了
把要執行的程式路徑放在 :pwd6 下就可以了
小弟不才 有錯誤的地方在請高手幫忙改囉!!
限制執行該批次檔案權限應該是較好的解法
但是將執行的指令放在.BAT裡頭,對方只要打開.BAT內容還是被看光光
最好還是先封裝成EXE檔比較好,並將該EXE檔設成只有自己有執行權限(手動執行)
另外,也可將EXE檔設在WINDOWS的工作排程(可自動執行),並設定執行身份(設成自己)
shinpin_yeh提到:
並將該EXE檔設成只有自己有執行權限(手動執行)
我們的電腦, 每個帳號都是Admin的權限, 怎麼設成只有自己可執行的權限..
heyday 提到:
每個帳號都是Admin的權限
那是本機 admin吧,你會把網域其他帳號加到你的本機admin群組嗎?還是每個帳號都是Domain admin?
檔案系統要用 NTFS,才有安全性可以設定...
唉~~ 不管怎麼防,都一樣。在老闆面前黑掉,他高興用2~3個人取代你的工作也行...
calvinkuo提到:
檔案系統要用 NTFS,才有安全性可以設定...
sorry,我這沒架server,都是client., XP與7, 有解嗎..