我在用pb11.5做web發(fā)布過程中遇到這類錯(cuò)誤,使用了這個(gè)修復(fù)工具搞定了,比較不錯(cuò)!
源碼:
@echo off
echo *echo *
echo ****************************************************
echo * *
echo * IIS Server Application Error錯(cuò)誤自動修復(fù)批處理 *
echo * 作者:hayden *
echo * *
echo ****************************************************
echo *
echo *
set /p isok0=開始IIS修復(fù)?(y/n)
if %isok0%==y goto begin
goto forend
:begin
set userIWAM=IWAM_%COMPUTERNAME%
set userIUSR=IUSR_%COMPUTERNAME%
:checkIWAM
net user %userIWAM%
if %errorlevel%==0 goto checkIUSR
goto netuserIWAM
:checkIUSR
net user %userIUSR%
if %errorlevel%==0 goto edituser
goto netuserIUSR
:netuserIWAM
net user
set /p tiwam=請輸入正確的“啟動 IIS 進(jìn)程帳戶”名稱(即以IWAM_開頭的帳戶名稱)?
set userIWAM=%ans%
goto checkIWAM
:netuserIUSR
net user
set /p tiusr=請輸入正確的“Internet 來賓帳戶”名稱(即以IUSR_開頭的帳戶名稱)?
set userIUSR=%tiusr%
goto checkIUSR
:edituser
echo 重置“啟動 IIS 進(jìn)程帳戶”密碼為123
net user %userIWAM% 123
echo 重置“Internet 來賓帳戶”密碼為123
net user %userIUSR% 123
echo 密碼同步
cscript.exe %HOMEDRIVE%InetpubAdminscriptsadsutil.vbs set w3svc/wamuserpass 123
cscript.exe %HOMEDRIVE%InetpubAdminscriptsadsutil.vbs set w3svc/anonymoususerpass 123
echo *
echo *
set /p isok1=請測試IIS是否正常?(y/n)
if %isok1%==y goto forend
cscript.exe %HOMEDRIVE%InetpubAdminscriptssynciwam.vbs -v
iisreset
echo *
echo *
set /p isok2=請測試IIS是否正常?(y/n)
if %isok2%==y goto forend
echo 清除MSDTC服務(wù)注冊表相關(guān)信息
reg delete HKLMSYSTEMCurrentControlSetServicesMSDTC /f
reg delete HKLMSOFTWAREMicrosoftMSDTC /f
reg delete HKCRCID /f
echo 停止并重新安裝MSDTC服務(wù)
net stop msdtc
msdtc -uninstall
msdtc -install
echo 重置“啟動 IIS 進(jìn)程帳戶”與“Internet 來賓帳戶”密碼
net user %userIWAM% 123
net user %userIUSR% 123
echo 同步IIS metabase中IWAM_MYSERVER的密碼
%HOMEDRIVE%InetpubAdminscriptsadsutil.vbs set w3svc/wamuserpass "123"
echo 同步COM+應(yīng)用程序所用的IWAM_MYSERVER密碼
cscript.exe %HOMEDRIVE%InetpubAdminscriptssynciwam.vbs -v
echo *
echo *
set /p isok3=請測試IIS是否正常?(y/n)
if %isok3%==y goto forend
echo 重新注冊相關(guān)組件
rundll32 %windir%system32inetsrvwamreg.dll, CreateIISPackage
regsvr32 %windir%system32inetsrvasptxn.dll /s
echo *
echo *
set /p isok4=請測試IIS是否正常?(y/n)
if %isok4%==y goto forend
echo *
echo *
echo 如果IIS還不正常的話,我真的解決不了唉,請另請高明吧!
:forend
echo *
echo *
@echo 批處理執(zhí)行完畢,請按任意鍵退出?
@echo off
pause
您的評論需要經(jīng)過審核才能顯示
有用
有用
有用