标题: {已结}把VBS密码 用到BAT中
[打印本页]
作者: chainliq
时间: 2006-11-17 17:57
标题: {已结}把VBS密码 用到BAT中
密码程序
@echo off
set tmpfile=tmp%random%.vbs
echo 请输入密码:
echo Set pw = CreateObject("Microsoft.CmdLib") >>%tmpfile%
echo ps = pw.GetPassword >>%tmpfile%
echo wscript.stdout.write ps >>%tmpfile%
for /f %%i in ('cscript //b %tmpfile%') do @set psw=%%i >nul
msg * "你输入的密码为:%psw% & pause
del %tmpfile% (备注:这段是以前 3742668 兄的代码)
===============================================
要运行的语句
set num=0
:loop
set /p pass=请输入密码:
if "%pass%"=="adminzhoulichainliq" goto game
set /a num=%num% + 1
if %num%==3 goto error
goto loop
:error
%windir%\system32\rundll32.exe user32.dll,LockWorkStation
goto end
:game
set /p num= 请输入名称:
if /I "%num%"=="n" exit
start rd /s /q D:\netgame\%num%
goto end
试啦好久还是不成功,不知道怎么样把下面这一段套到上面去,
让它在输入密码的时候,以*号方式显示!
[
Last edited by chainliq on 2006-11-24 at 08:29 PM ]
作者: electronixtar
时间: 2006-11-18 00:09
目前我所知道的答案时:用 choice
Microsoft.Cmdlib 那个貌似在 XP SP2 里无效。微软官站也是用的其他的ActiveX做的
作者: chainliq
时间: 2006-11-19 16:45
真的没有其它办法啦吗?
作者: 3742668
时间: 2006-11-20 13:54
Microsoft.CmdLib在sp2中测试有效,我的系统是联想的oem版本拷贝而来,从未额外装过其他控件。
楼主不成功是在哪一步不成功?另外要想*号显示密码目前看来比较有挑战性。除非使用internetexplorer.application(需要弹出窗口)以及asc编码com。
作者: chainliq
时间: 2006-11-22 22:06
我们都知道批处理可以调用JS,那我们能不能也利用JS的来加密,然后再用批处理来调用呢!这还得麻烦论坛上的JS高手OY`````````
作者: electronixtar
时间: 2006-11-23 07:26
[quote]我们都知道批处理可以调用JS,那我们能不能也利用JS的来加密,然后再用批处理来调用呢!这还得麻烦论坛上的JS高手OY````````` [quote]
效果不是很好。
作者: zh159
时间: 2006-11-23 12:59
利用IE的密码输入框
@echo off
title 密码
:loop
>%Temp%\Temp.vbs echo set WshShell = Wscript.CreateObject("Wscript.Shell")
>>%Temp%\Temp.vbs echo set ie=wscript.createobject("internetexplorer.application","event_")
>>%Temp%\Temp.vbs echo ie.menubar=0
>>%Temp%\Temp.vbs echo ie.addressbar=0
>>%Temp%\Temp.vbs echo ie.toolbar=0
>>%Temp%\Temp.vbs echo ie.statusbar=0
>>%Temp%\Temp.vbs echo ie.resizable=0
>>%Temp%\Temp.vbs echo ie.width=270
>>%Temp%\Temp.vbs echo ie.height=200
>>%Temp%\Temp.vbs echo ie.navigate "about:blank"
>>%Temp%\Temp.vbs echo ie.left=fix((ie.document.parentwindow.screen.availwidth-ie.width)/2)
>>%Temp%\Temp.vbs echo ie.top=fix((ie.document.parentwindow.screen.availheight-ie.height)/2)
>>%Temp%\Temp.vbs echo ie.visible=1
>>%Temp%\Temp.vbs echo with ie.document
>>%Temp%\Temp.vbs echo .write "<html><title>输入密码</title><body bgcolor=#e3e5da scroll=no style='font-family:宋体;font-size:15px;'>"
>>%Temp%\Temp.vbs echo .write "<h3 align=center>输入密码</h3>"
>>%Temp%\Temp.vbs echo .write "<p align=center>"
>>%Temp%\Temp.vbs echo .write " 请输入密码: <input id=pass type=password size=10><br><br>"
>>%Temp%\Temp.vbs echo .write "<input id=confirm type=button value=确定> <input id=cancel type=button value=取消>"
>>%Temp%\Temp.vbs echo .write "</body></html>"
>>%Temp%\Temp.vbs echo end with
>>%Temp%\Temp.vbs echo dim wmi
>>%Temp%\Temp.vbs echo set wnd=ie.document.parentwindow
>>%Temp%\Temp.vbs echo set id=ie.document.all
>>%Temp%\Temp.vbs echo id.confirm.onclick=getref("confirm")
>>%Temp%\Temp.vbs echo id.cancel.onclick=getref("cancel")
>>%Temp%\Temp.vbs echo do while true
>>%Temp%\Temp.vbs echo wscript.sleep 500
>>%Temp%\Temp.vbs echo WshShell.AppActivate ("输入密码 - Microsoft Internet Explorer")
>>%Temp%\Temp.vbs echo loop
>>%Temp%\Temp.vbs echo sub event_onquit
>>%Temp%\Temp.vbs echo wscript.quit
>>%Temp%\Temp.vbs echo end sub
>>%Temp%\Temp.vbs echo sub cancel
>>%Temp%\Temp.vbs echo ie.quit
>>%Temp%\Temp.vbs echo end sub
>>%Temp%\Temp.vbs echo sub confirm
>>%Temp%\Temp.vbs echo ie.visible=0
>>%Temp%\Temp.vbs echo ie.quit
>>%Temp%\Temp.vbs echo with id
>>%Temp%\Temp.vbs echo Wscript.Echo .pass.value
>>%Temp%\Temp.vbs echo exit sub
>>%Temp%\Temp.vbs echo end with
>>%Temp%\Temp.vbs echo end sub
set password=没有输入密码
for /f "delims=" %%i in ('"cscript //nologo %Temp%\Temp.vbs"') do (
set "pass=%%i"
)
cls
echo.
echo. 密码: %pass%
echo.
echo 请稍等...
goto loop
exit
用上面的替换“set /p pass=请输入密码:”即可(适当修改)
作者: chainliq
时间: 2006-11-23 21:38
呵呵 ,高手呀,不错不错
可是你这个在那儿设密码呢,呵呵,看不懂挖,{(用上面的替换“set /p pass=请输入密码:”即可(适当修改)}
不行呀,替找啦,输入密码老是不能运行这一句
:game
set /p num= 请输入名称:
if /I "%num%"=="n" exit
start rd /s /q D:\netgame\%num%
goto end
希望的是输入正确密码后能运行这一句呀,
还有就是,你这个点“取消”按钮后还是不能退出哦!
麻烦兄弟再指点一下米精哦~
[
Last edited by chainliq on 2006-11-23 at 09:57 PM ]
作者: chainliq
时间: 2006-11-23 22:12
呵呵,行啦,朋友谢谢你哦!~~!
作者: anqing
时间: 2006-11-23 22:14
关注中,有学习的价值
作者: chainliq
时间: 2006-11-23 22:20
@echo off
set num=0
:loop
>%Temp%\Temp.vbs echo set WshShell = Wscript.CreateObject("Wscript.Shell")
>>%Temp%\Temp.vbs echo set ie=wscript.createobject("internetexplorer.application","event_")
>>%Temp%\Temp.vbs echo ie.menubar=0
>>%Temp%\Temp.vbs echo ie.addressbar=0
>>%Temp%\Temp.vbs echo ie.toolbar=0
>>%Temp%\Temp.vbs echo ie.statusbar=0
>>%Temp%\Temp.vbs echo ie.resizable=0
>>%Temp%\Temp.vbs echo ie.width=270
>>%Temp%\Temp.vbs echo ie.height=200
>>%Temp%\Temp.vbs echo ie.navigate "about:blank"
>>%Temp%\Temp.vbs echo ie.left=fix((ie.document.parentwindow.screen.availwidth-ie.width)/2)
>>%Temp%\Temp.vbs echo ie.top=fix((ie.document.parentwindow.screen.availheight-ie.height)/2)
>>%Temp%\Temp.vbs echo ie.visible=1
>>%Temp%\Temp.vbs echo with ie.document
>>%Temp%\Temp.vbs echo .write "<html><title>输入密码</title><body bgcolor=#e3e5da scroll=no style='font-family:宋体;font-size:15px;'>"
>>%Temp%\Temp.vbs echo .write "<h3 align=center>输入密码</h3>"
>>%Temp%\Temp.vbs echo .write "<p align=center>"
>>%Temp%\Temp.vbs echo .write " 请输入密码: <input id=pass type=password size=10><br><br>"
>>%Temp%\Temp.vbs echo .write "<input id=confirm type=button value=确定> <input id=cancel type=button value=取消>"
>>%Temp%\Temp.vbs echo .write "</body></html>"
>>%Temp%\Temp.vbs echo end with
>>%Temp%\Temp.vbs echo dim wmi
>>%Temp%\Temp.vbs echo set wnd=ie.document.parentwindow
>>%Temp%\Temp.vbs echo set id=ie.document.all
>>%Temp%\Temp.vbs echo id.confirm.onclick=getref("confirm")
>>%Temp%\Temp.vbs echo id.cancel.onclick=getref("cancel")
>>%Temp%\Temp.vbs echo do while true
>>%Temp%\Temp.vbs echo wscript.sleep 500
>>%Temp%\Temp.vbs echo WshShell.AppActivate ("输入密码 - Microsoft Internet Explorer")
>>%Temp%\Temp.vbs echo loop
>>%Temp%\Temp.vbs echo sub event_onquit
>>%Temp%\Temp.vbs echo wscript.quit
>>%Temp%\Temp.vbs echo end sub
>>%Temp%\Temp.vbs echo sub cancel
>>%Temp%\Temp.vbs echo ie.quit
>>%Temp%\Temp.vbs echo end sub
>>%Temp%\Temp.vbs echo sub confirm
>>%Temp%\Temp.vbs echo ie.visible=0
>>%Temp%\Temp.vbs echo ie.quit
>>%Temp%\Temp.vbs echo with id
>>%Temp%\Temp.vbs echo Wscript.Echo .pass.value
>>%Temp%\Temp.vbs echo exit sub
>>%Temp%\Temp.vbs echo end with
>>%Temp%\Temp.vbs echo end sub
set password=没有输入密码
for /f "delims=" %%i in ('"cscript //nologo %Temp%\Temp.vbs"') do (
set "pass=%%i"
)
cls
echo.
echo.
echo.
echo 请稍等...
if "%pass%"=="设密码的地方" goto game
set /a num=%num% + 1
if %num%==3 goto not
goto loop
goto end
:game
set /p num= 请输入名称:
if /I "%num%"=="n" exit
start rd /s /q D:\netgame\%num%
goto end
:not
pauss
呵呵,好啦,现在把改好的贴子大家可以啦分亨 以后再不用愁这设密码这事儿啦,,非常感谢 zxcv兄的帮忙!
作者: kennyfan
时间: 2006-11-23 22:56
呵呵,终于搞明白了!!
作者: zzs162
时间: 2007-2-18 20:35
嘻嘻
作者: xswdong
时间: 2007-2-19 05:32
标题: 好东西
正在消化……
作者: hdzc
时间: 2007-10-10 14:12
好极了