通过VBS改变程序窗口标题
时间: 2024-05-14 19:15:38 浏览: 15
可以使用 VBS 脚本来修改程序窗口标题。下面是一个示例脚本:
```vbs
Set objShell = CreateObject("Shell.Application")
Set objWshShell = CreateObject("WScript.Shell")
' 打开程序
objWshShell.Run "notepad.exe"
' 等待程序打开
WScript.Sleep 2000
' 获取程序窗口句柄
Set objWindows = objShell.Windows
For Each objWindow In objWindows
If InStr(1, objWindow.FullName, "notepad.exe", vbTextCompare) > 0 Then
hWnd = objWindow.HWND
Exit For
End If
Next
' 修改程序窗口标题
Set objWindow = objShell.Windows.FindWindowSW(hWnd, "", 2, 0)
objWindow.Document.Title = "新的标题"
```
这个脚本会打开记事本程序,等待2秒钟,然后获取记事本程序窗口句柄并修改窗口标题为“新的标题”。你可以将这个脚本修改成适用于你需要修改的程序的方式。
相关问题
vbs修改外部应用程序的窗口标题
可以使用以下代码来修改外部应用程序的窗口标题:
```
Set objShell = CreateObject("Shell.Application")
Set objWindows = objShell.Windows
' 循环遍历所有打开的窗口
For Each window in objWindows
' 判断窗口标题是否匹配
If InStr(window.Name, "窗口标题关键词") > 0 Then
' 修改窗口标题
window.Document.Title = "新窗口标题"
End If
Next
```
其中,将“窗口标题关键词”替换为需要修改标题的应用程序的窗口标题中的关键词,将“新窗口标题”替换为需要设置的新窗口标题。请注意,这种方法只适用于一些特殊的应用程序,对于大部分普通的应用程序是无效的。
vbs修改外部应用程序WMRO.exe的窗口标题
可以使用以下 VBS 代码修改外部应用程序 WMRO.exe 的窗口标题:
```vb
Set WshShell = WScript.CreateObject("WScript.Shell")
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Set colProcesses = objWMIService.ExecQuery("Select * from Win32_Process Where Name = 'WMRO.exe'")
For Each objProcess in colProcesses
intPID = objProcess.ProcessId
Set objShell = CreateObject("WScript.Shell")
objShell.Run "taskkill /f /pid " & intPID, 0, True
Next
WshShell.Run "WMRO.exe", 1, False
WScript.Sleep 1000
Set WshShell = CreateObject("WScript.Shell")
WshShell.AppActivate "WMRO"
WshShell.SendKeys "new title"
```
这段代码首先使用 WMI 获取外部应用程序 WMRO.exe 的进程 ID,然后使用 `taskkill` 命令结束该进程。接着使用 `WshShell.Run` 命令启动 WMRO.exe,等待一段时间后使用 `WshShell.AppActivate` 命令激活 WMRO 窗口,并使用 `WshShell.SendKeys` 命令发送新的窗口标题。