本帖最后由 yiwuyun 于 2015-11-20 07:20 编辑
- if ($true){}# == ($true){}# goto ___yiwuyun
- <#BeginBatOperation#
- :___yiwuyun
- @echo off&setlocal&cls
- (echo $yiwuyun_fileName="%~f0"&echo $strPath="%~dp0"&type "%~f0")|powershell -command -
- exit/b 0
- #EndBatOperation#>
-
- <#StartPowerShell#>
- $QQPath=Get-ChildItem -Path "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall"|%{if($_.GetValue("DisplayName") -eq "腾讯QQ"){$_.GetValue("InstallLocation");}}
- $QQProgram=Join-Path -Path $QQPath -ChildPath bin\qq.exe;
- $wsh=New-Object -ComObject "wscript.shell";
- $wsh.Exec($QQProgram);
-
- ###此时有10秒中的时间可以作一些其他操作,将焦点转移到其他窗口中去。
- sleep 10;
- while(-not $wsh.AppActivate("qq")){;};
- $wsh.SendKeys("{ESC}");
- while(-not $wsh.AppActivate("qq")){;};
- $wsh.SendKeys("{ENTER}");
- $wsh.SendKeys("{ENTER}");
- ###猜测由于有QQ保护进程作怪,因此上述操作需要重复两次
-
- $wsh.SendKeys("12345678{ENTER}yiwuyun{ENTER}");
-
-
- ###无法解决QQ登陆一次之后记住帐号的情形。我想要彻底解决只有删掉QQ号码下的配置文件才行。这个没有试了。
-
- <#EndPowerShell#>
复制代码 <###
以上代码为批处理,扩展名为bat
vbs我不太熟了,但思路是一样,你可以照写。我前面说的用title会出问题不知是原来我写哪个小程序得出的结论,看来有错。但用进程ID同样能激活QQ。
###> |