Advertisement
axutongxue

一键批量AI搜索(PowerShell 版)

Mar 4th, 2025 (edited)
658
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. @echo off
  2. if "%~1"=="" (
  3. echo 未输入内容,将提问剪贴板
  4. ) else (
  5. echo %~1| clip
  6. )
  7.  
  8. cd /d %~dp0
  9. for /f "usebackq tokens=1 delims=:" %%a in (`findstr -n "^###" %0`) do (if not DEFINED skip set skip=%%a)
  10. powershell -c "Get-Content '%~0' | Select-Object -Skip %skip% | Out-String | Invoke-Expression"
  11. exit
  12.  
  13. ################################################################
  14. # 窗口、鼠标、键盘控制
  15. Add-Type @"
  16.  using System;
  17.  using System.Runtime.InteropServices;
  18.  
  19.  public class User32 {
  20.    [DllImport("user32.dll")]
  21.    [return: MarshalAs(UnmanagedType.Bool)]
  22.    public static extern bool SetForegroundWindow(IntPtr hWnd);
  23.  
  24.    [DllImport("user32.dll")]
  25.    public static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);
  26.  
  27.    public const int SW_SHOWNORMAL = 1;
  28.    public const int SW_SHOWMAXIMIZED = 3;
  29.    public const int SW_SHOWMINIMIZED = 2;
  30.  
  31.    [DllImport("user32.dll", CharSet = CharSet.Auto, ExactSpelling = true)]
  32.    public static extern void mouse_event(int dwFlags, int dx, int dy, int cButtons, int dwExtraInfo);
  33.    [DllImport("user32.dll")]
  34.    [return: MarshalAs(UnmanagedType.Bool)]
  35.    public static extern bool SetCursorPos(int X, int Y);
  36.    [DllImport("user32.dll")]
  37.    public static extern bool GetCursorPos(out POINT lpPoint);
  38.    [DllImport("user32.dll")]
  39.    public static extern void keybd_event(byte bVk, byte bScan, uint dwFlags, UIntPtr dwExtraInfo);
  40.    [DllImport("user32.dll")]
  41.    public static extern int GetSystemMetrics(int nIndex);
  42.    public const int SM_CXSCREEN = 0;
  43.    public const int SM_CYSCREEN = 1;
  44.    public struct POINT {
  45.        public int X;
  46.        public int Y;
  47.    }
  48.  }
  49. "@
  50.  
  51. # 设置键盘钩子
  52. Add-Type -TypeDefinition @"
  53. using System;
  54. using System.Runtime.InteropServices;
  55. using System.Diagnostics;
  56.  
  57. public class KeyboardHook {
  58.    private delegate IntPtr LowLevelKeyboardProc(int nCode, IntPtr wParam, IntPtr lParam);
  59.    private static LowLevelKeyboardProc _proc = HookCallback;
  60.    private static IntPtr _hookID = IntPtr.Zero;
  61.  
  62.    [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
  63.    private static extern IntPtr SetWindowsHookEx(int idHook, LowLevelKeyboardProc lpfn, IntPtr hMod, uint dwThreadId);
  64.  
  65.    [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
  66.    [return: MarshalAs(UnmanagedType.Bool)]
  67.    private static extern bool UnhookWindowsHookEx(IntPtr hhk);
  68.  
  69.    [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
  70.    private static extern IntPtr CallNextHookEx(IntPtr hhk, int nCode, IntPtr wParam, IntPtr lParam);
  71.  
  72.    [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
  73.    private static extern IntPtr GetModuleHandle(string lpModuleName);
  74.  
  75.    private const int WH_KEYBOARD_LL = 13;
  76.    private const int WM_KEYDOWN = 0x0100;
  77.    private const int VK_F9 = 0x78;
  78.  
  79.    public static void SetHook() {
  80.        using (Process curProcess = Process.GetCurrentProcess())
  81.        using (ProcessModule curModule = curProcess.MainModule) {
  82.            _hookID = SetWindowsHookEx(WH_KEYBOARD_LL, _proc, GetModuleHandle(curModule.ModuleName), 0);
  83.        }
  84.    }
  85.  
  86.    public static void UnsetHook() {
  87.        UnhookWindowsHookEx(_hookID);
  88.    }
  89.  
  90.    private static IntPtr HookCallback(int nCode, IntPtr wParam, IntPtr lParam) {
  91.        if (nCode >= 0 && wParam == (IntPtr)WM_KEYDOWN) {
  92.            int vkCode = Marshal.ReadInt32(lParam);
  93.            if (vkCode == VK_F9) {
  94.                UnsetHook(); // 卸载钩子
  95.                Environment.Exit(0); // 中止脚本的执行
  96.            }
  97.        }
  98.        return CallNextHookEx(_hookID, nCode, wParam, lParam);
  99.    }
  100. }
  101. "@
  102.  
  103. # 设置钩子
  104. [KeyboardHook]::SetHook()
  105.  
  106. # 定义按键事件常量
  107. $KEYEVENTF_KEYDOWN = 0x0000
  108. $KEYEVENTF_KEYUP = 0x0002
  109. $VK_CTRL = 0x11
  110. $VK_V = 0x56
  111. $VK_C = 0x43
  112. $VK_A = 0x41
  113. $VK_ENTER = 0x0D
  114. $VK_SLASH_MAIN = 0xBF
  115.  
  116. # 定义鼠标事件常量
  117. $MOUSEEVENTF_MOVE = 0x0001
  118. $MOUSEEVENTF_LEFTDOWN = 0x0002
  119. $MOUSEEVENTF_LEFTUP = 0x0004
  120.  
  121. # 自动获取系统缩放与布局比例
  122. Add-Type @"
  123. using System;
  124. using System.Runtime.InteropServices;
  125. public class DpiHelper {
  126.    [DllImport("user32.dll")] public static extern IntPtr GetForegroundWindow();
  127.    [DllImport("user32.dll")] public static extern int GetDpiForWindow(IntPtr hwnd);
  128. }
  129. "@
  130.  
  131. # 获取当前活动窗口句柄
  132. $hWnd = [DpiHelper]::GetForegroundWindow()
  133.  
  134. # 通过API获取窗口DPI
  135. $dpiValue = [DpiHelper]::GetDpiForWindow($hWnd)
  136.  
  137. # 计算系统缩放比例(基于96 DPI基准)
  138. $scaling = [math]::Round($dpiValue / 96, 2)  # 保留两位小数
  139.  
  140. # 获取剪贴板内容
  141. $clipboard = Get-Clipboard
  142.  
  143. ###############################################################
  144.  
  145. # 秘塔AI
  146. Start-Process "https://metaso.cn/?q=$clipboard"
  147.  
  148. ###############################################################
  149.  
  150. # 360纳米AI搜索
  151. Start-Process "https://www.n.cn/?q=$clipboard"
  152.  
  153. ################################################################
  154.  
  155. # 心流AI搜索
  156. Start-Process "https://www.iflow.cn/answers?q=$clipboard&appCode=NET_DEEPSEEK"
  157.  
  158. ################################################################
  159.  
  160. # 出现直接调用搜索串的情况必须等待一段时间,否则会提前执行后续自动化操作
  161. Start-Sleep -Milliseconds 500
  162.  
  163. ################################################################
  164.  
  165. # 天工AI搜索
  166. Start-Process "https://www.tiangong.cn/"
  167.  
  168. # 等待一段时间
  169. Start-Sleep -Milliseconds 1000
  170.  
  171. # 根据页面上面的什么文字内容来判断网页是否加载完成
  172. $targetString = "京公网安备11010102006563号"
  173.  
  174. do {
  175. # 获取剪贴板内容
  176. $clipboardContent = Get-Clipboard
  177.  
  178. # 如果包含目标字符串
  179. if ($clipboardContent -like "*$targetString*") {
  180.  
  181. Set-Clipboard -Value $clipboard
  182.  
  183. # 设置坐标并移动鼠标到DeepSeek开关
  184. $X = [math]::Round(930 / $scaling)
  185. $Y = [math]::Round(603 / $scaling)
  186. [User32]::SetCursorPos($X, $Y)
  187.  
  188. # 等待一段时间
  189. Start-Sleep -Milliseconds 500
  190.  
  191. # 模拟鼠标左键按下和抬起事件
  192. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  193. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  194.  
  195. # 等待一段时间
  196. Start-Sleep -Milliseconds 200
  197.  
  198. # 设置坐标并移动鼠标到输入框
  199. $X = [math]::Round(733 / $scaling)
  200. $Y = [math]::Round(497 / $scaling)
  201. [User32]::SetCursorPos($X, $Y)
  202.  
  203. # 等待一段时间
  204. Start-Sleep -Milliseconds 200
  205.  
  206. # 模拟鼠标左键按下和抬起事件
  207. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  208. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  209.  
  210. # 发送 Ctrl+V 组合键
  211. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  212. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  213. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  214. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  215.  
  216. # 等待一段时间
  217. Start-Sleep -Milliseconds 200
  218.  
  219. # 模拟按下回车键
  220. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  221. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  222.  
  223. # 跳出循环
  224. break
  225.     } else {
  226.  
  227. # 设置坐标并移动鼠标到页面空白处
  228. $X = [math]::Round(1888 / $scaling)
  229. $Y = [math]::Round(1008 / $scaling)
  230. [User32]::SetCursorPos($X, $Y)
  231.  
  232. # 模拟鼠标左键按下和抬起事件
  233. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  234. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  235.  
  236. # 发送 Ctrl+A 组合键
  237. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  238. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  239. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  240. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  241.  
  242. # 发送 Ctrl+C 组合键
  243. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  244. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  245. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  246. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  247.  
  248. # 等待一段时间
  249. Start-Sleep -Milliseconds 200
  250.     }
  251. } while ($true)
  252.  
  253. ################################################################
  254.  
  255. # 无涯问知
  256. Start-Process "https://wuya-ai.com/"
  257.  
  258. # 等待一段时间
  259. Start-Sleep -Milliseconds 1000
  260.  
  261. # 根据页面上面的什么文字内容来判断网页是否加载完成
  262. $targetString = "沪公网安备31010402333691"
  263.  
  264. do {
  265. # 获取剪贴板内容
  266. $clipboardContent = Get-Clipboard
  267.  
  268. # 如果包含目标字符串
  269. if ($clipboardContent -like "*$targetString*") {
  270.  
  271. Set-Clipboard -Value $clipboard
  272.  
  273. # 设置坐标并移动鼠标到DeepSeek开关
  274. $X = [math]::Round(710 / $scaling)
  275. $Y = [math]::Round(500 / $scaling)
  276. [User32]::SetCursorPos($X, $Y)
  277.  
  278. # 等待一段时间
  279. Start-Sleep -Milliseconds 200
  280.  
  281. # 模拟鼠标左键按下和抬起事件
  282. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  283. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  284.  
  285. # 等待一段时间
  286. Start-Sleep -Milliseconds 200
  287.  
  288. # 设置坐标并移动鼠标到输入框
  289. $X = [math]::Round(710 / $scaling)
  290. $Y = [math]::Round(390 / $scaling)
  291. [User32]::SetCursorPos($X, $Y)
  292.  
  293. # 等待一段时间
  294. Start-Sleep -Milliseconds 200
  295.  
  296. # 模拟鼠标左键按下和抬起事件
  297. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  298. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  299.  
  300. # 发送 Ctrl+V 组合键
  301. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  302. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  303. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  304. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  305.  
  306. # 等待一段时间
  307. Start-Sleep -Milliseconds 200
  308.  
  309. # 模拟按下回车键
  310. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  311. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  312.  
  313. # 跳出循环
  314. break
  315.     } else {
  316.  
  317. # 设置坐标并移动鼠标到页面空白处
  318. $X = [math]::Round(1888 / $scaling)
  319. $Y = [math]::Round(1008 / $scaling)
  320. [User32]::SetCursorPos($X, $Y)
  321.  
  322. # 模拟鼠标左键按下和抬起事件
  323. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  324. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  325.  
  326. # 发送 Ctrl+A 组合键
  327. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  328. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  329. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  330. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  331.  
  332. # 发送 Ctrl+C 组合键
  333. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  334. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  335. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  336. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  337.  
  338. # 等待一段时间
  339. Start-Sleep -Milliseconds 200
  340.     }
  341. } while ($true)
  342.  
  343. ################################################################
  344.  
  345. # 博查AI搜索
  346. Start-Process "https://bochaai.com/"
  347.  
  348. # 等待一段时间
  349. Start-Sleep -Milliseconds 1000
  350.  
  351. # 根据页面上面的什么文字内容来判断网页是否加载完成
  352. $targetString = "浙ICP备18038317号"
  353.  
  354. do {
  355. # 获取剪贴板内容
  356. $clipboardContent = Get-Clipboard
  357.  
  358. # 如果包含目标字符串
  359. if ($clipboardContent -like "*$targetString*") {
  360.  
  361. Set-Clipboard -Value $clipboard
  362.  
  363. # 设置坐标并移动鼠标到输入框
  364. $X = [math]::Round(410 / $scaling)
  365. $Y = [math]::Round(500 / $scaling)
  366. [User32]::SetCursorPos($X, $Y)
  367.  
  368. # 等待一段时间
  369. Start-Sleep -Milliseconds 200
  370.  
  371. # 模拟鼠标左键按下和抬起事件
  372. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  373. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  374.  
  375. # 发送 Ctrl+V 组合键
  376. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  377. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  378. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  379. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  380.  
  381. # 等待一段时间
  382. Start-Sleep -Milliseconds 200
  383.  
  384. # 模拟按下回车键
  385. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  386. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  387.  
  388. # 跳出循环
  389. break
  390.     } else {
  391.  
  392. # 设置坐标并移动鼠标到页面空白处
  393. $X = [math]::Round(1888 / $scaling)
  394. $Y = [math]::Round(1008 / $scaling)
  395. [User32]::SetCursorPos($X, $Y)
  396.  
  397. # 模拟鼠标左键按下和抬起事件
  398. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  399. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  400.  
  401. # 发送 Ctrl+A 组合键
  402. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  403. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  404. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  405. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  406.  
  407. # 发送 Ctrl+C 组合键
  408. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  409. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  410. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  411. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  412.  
  413. # 等待一段时间
  414. Start-Sleep -Milliseconds 200
  415.     }
  416. } while ($true)
  417.  
  418. ################################################################
  419.  
  420. # 豆包AI搜索
  421. Start-Process "https://www.doubao.com/chat/search"
  422.  
  423. # 等待一段时间
  424. Start-Sleep -Milliseconds 1000
  425.  
  426. # 根据页面上面的什么文字内容来判断网页是否加载完成
  427. $targetString = "全网搜索"
  428.  
  429. do {
  430. # 获取剪贴板内容
  431. $clipboardContent = Get-Clipboard
  432.  
  433. # 如果包含目标字符串
  434. if ($clipboardContent -like "*$targetString*") {
  435.  
  436. Set-Clipboard -Value $clipboard
  437.  
  438. # 设置坐标并移动鼠标到输入框
  439. $X = [math]::Round(970 / $scaling)
  440. $Y = [math]::Round(485 / $scaling)
  441. [User32]::SetCursorPos($X, $Y)
  442.  
  443. # 等待一段时间
  444. Start-Sleep -Milliseconds 200
  445.  
  446. # 模拟鼠标左键按下和抬起事件
  447. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  448. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  449.  
  450. # 发送 Ctrl+V 组合键
  451. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  452. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  453. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  454. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  455.  
  456. # 等待一段时间
  457. Start-Sleep -Milliseconds 200
  458.  
  459. # 模拟按下回车键
  460. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  461. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  462.  
  463. # 跳出循环
  464. break
  465.     } else {
  466.  
  467. # 设置坐标并移动鼠标到页面空白处
  468. $X = [math]::Round(1888 / $scaling)
  469. $Y = [math]::Round(1008 / $scaling)
  470. [User32]::SetCursorPos($X, $Y)
  471.  
  472. # 模拟鼠标左键按下和抬起事件
  473. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  474. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  475.  
  476. # 发送 Ctrl+A 组合键
  477. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  478. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  479. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  480. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  481.  
  482. # 发送 Ctrl+C 组合键
  483. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  484. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  485. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  486. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  487.  
  488. # 等待一段时间
  489. Start-Sleep -Milliseconds 200
  490.     }
  491. } while ($true)
  492.  
  493.  
  494. ################################################################
  495.  
  496. # 智谱AI搜索
  497. Start-Process "https://chatglm.cn/main/gdetail/659e54b1b8006379b4b2abd6?lang=zh"
  498.  
  499. # 等待一段时间
  500. Start-Sleep -Milliseconds 1000
  501.  
  502. # 根据页面上面的什么文字内容来判断网页是否加载完成
  503. $targetString = "AI搜索"
  504.  
  505. do {
  506. # 获取剪贴板内容
  507. $clipboardContent = Get-Clipboard
  508.  
  509. # 如果包含目标字符串
  510. if ($clipboardContent -like "*$targetString*") {
  511.  
  512. Set-Clipboard -Value $clipboard
  513.  
  514. # 设置坐标并移动鼠标到输入框
  515. $X = [math]::Round(650 / $scaling)
  516. $Y = [math]::Round(565 / $scaling)
  517. [User32]::SetCursorPos($X, $Y)
  518.  
  519. # 等待一段时间
  520. Start-Sleep -Milliseconds 200
  521.  
  522. # 模拟鼠标左键按下和抬起事件
  523. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  524. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  525.  
  526. # 发送 Ctrl+V 组合键
  527. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  528. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  529. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  530. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  531.  
  532. # 等待一段时间
  533. Start-Sleep -Milliseconds 200
  534.  
  535. # 模拟按下回车键
  536. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  537. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  538.  
  539. # 跳出循环
  540. break
  541.     } else {
  542.  
  543. # 设置坐标并移动鼠标到页面空白处
  544. $X = [math]::Round(1888 / $scaling)
  545. $Y = [math]::Round(1008 / $scaling)
  546. [User32]::SetCursorPos($X, $Y)
  547.  
  548. # 模拟鼠标左键按下和抬起事件
  549. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  550. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  551.  
  552. # 发送 Ctrl+A 组合键
  553. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  554. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  555. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  556. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  557.  
  558. # 发送 Ctrl+C 组合键
  559. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  560. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  561. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  562. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  563.  
  564. # 等待一段时间
  565. Start-Sleep -Milliseconds 200
  566.     }
  567. } while ($true)
  568.  
  569.  
  570. ################################################################
  571.  
  572. # 通义深度AI搜索
  573. Start-Process "https://tongyi.aliyun.com/qianwen/"
  574.  
  575. # 等待一段时间
  576. Start-Sleep -Milliseconds 1000
  577.  
  578. # 根据页面上面的什么文字内容来判断网页是否加载完成
  579. $targetString = "深度搜索"
  580.  
  581. do {
  582. # 获取剪贴板内容
  583. $clipboardContent = Get-Clipboard
  584.  
  585. # 如果包含目标字符串
  586. if ($clipboardContent -like "*$targetString*") {
  587.  
  588. Set-Clipboard -Value $clipboard
  589.  
  590. # 设置坐标并移动鼠标到深度搜索开关
  591. $X = [math]::Round(795 / $scaling)
  592. $Y = [math]::Round(850 / $scaling)
  593. [User32]::SetCursorPos($X, $Y)
  594.  
  595. # 等待一段时间
  596. Start-Sleep -Milliseconds 200
  597.  
  598. # 模拟鼠标左键按下和抬起事件
  599. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  600. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  601.  
  602. # 设置坐标并移动鼠标到输入框
  603. $X = [math]::Round(795 / $scaling)
  604. $Y = [math]::Round(918 / $scaling)
  605. [User32]::SetCursorPos($X, $Y)
  606.  
  607. # 等待一段时间
  608. Start-Sleep -Milliseconds 200
  609.  
  610. # 模拟鼠标左键按下和抬起事件
  611. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  612. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  613.  
  614. # 发送 Ctrl+V 组合键
  615. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  616. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  617. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  618. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  619.  
  620. # 等待一段时间
  621. Start-Sleep -Milliseconds 200
  622.  
  623. # 模拟按下回车键
  624. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  625. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  626.  
  627. # 跳出循环
  628. break
  629.     } else {
  630.  
  631. # 设置坐标并移动鼠标到页面空白处
  632. $X = [math]::Round(1888 / $scaling)
  633. $Y = [math]::Round(1008 / $scaling)
  634. [User32]::SetCursorPos($X, $Y)
  635.  
  636. # 模拟鼠标左键按下和抬起事件
  637. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  638. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  639.  
  640. # 发送 Ctrl+A 组合键
  641. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  642. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  643. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  644. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  645.  
  646. # 发送 Ctrl+C 组合键
  647. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  648. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  649. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  650. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  651.  
  652. # 等待一段时间
  653. Start-Sleep -Milliseconds 200
  654.     }
  655. } while ($true)
  656.  
  657. ################################################################
  658.  
  659. # 月之暗面-KIMICHAT
  660. Start-Process "https://kimi.moonshot.cn/"
  661.  
  662. # 等待一段时间
  663. Start-Sleep -Milliseconds 2000
  664.  
  665. # 根据页面上面的什么文字内容来判断网页是否加载完成
  666. $targetString = "开启新会话"
  667.  
  668. do {
  669. # 获取剪贴板内容
  670. $clipboardContent = Get-Clipboard
  671.  
  672. # 检查剪贴板内容是否包含目标字符串
  673. if ($clipboardContent -like "*$targetString*") {
  674. Set-Clipboard -Value $clipboard
  675.  
  676. # 设置坐标并移动鼠标到输入框
  677. $X = [math]::Round(1000 / $scaling)
  678. $Y = [math]::Round(520 / $scaling)
  679. [User32]::SetCursorPos($X, $Y)
  680.  
  681. # 等待一段时间
  682. Start-Sleep -Milliseconds 200
  683.  
  684. # 模拟鼠标左键按下和抬起事件
  685. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  686. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  687.  
  688. # 等待一段时间
  689. Start-Sleep -Milliseconds 500
  690.  
  691. # 模拟按下/键
  692. [User32]::keybd_event($VK_SLASH_MAIN, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  693. [User32]::keybd_event($VK_SLASH_MAIN, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  694.  
  695. # 等待一段时间
  696. Start-Sleep -Milliseconds 500
  697.  
  698. # 模拟按下回车键
  699. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  700. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  701.  
  702. # 等待一段时间
  703. Start-Sleep -Milliseconds 500
  704.  
  705. # 发送 Ctrl+V 组合键
  706. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  707. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  708. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  709. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  710.  
  711. # 等待一段时间
  712. Start-Sleep -Milliseconds 500
  713.  
  714. # 模拟按下回车键
  715. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  716. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  717.  
  718. # 跳出循环
  719. break
  720.     } else {
  721.  
  722. # 设置坐标并移动鼠标到页面空白处
  723. $X = [math]::Round(1888 / $scaling)
  724. $Y = [math]::Round(1008 / $scaling)
  725. [User32]::SetCursorPos($X, $Y)
  726.  
  727. # 模拟鼠标左键按下和抬起事件
  728. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  729. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  730.  
  731. # 发送 Ctrl+A 组合键
  732. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  733. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  734. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  735. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  736.  
  737. # 发送 Ctrl+C 组合键
  738. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  739. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  740. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  741. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  742.  
  743. # 等待一段时间
  744. Start-Sleep -Milliseconds 200
  745.     }
  746. } while ($true)
  747.  
  748.  
  749. ###############################################################
  750.  
  751. # 腾讯元宝
  752. Start-Process "https://yuanbao.tencent.com/chat/naQivTmsDa"
  753.  
  754. # 等待一段时间
  755. Start-Sleep -Milliseconds 1000
  756.  
  757. # 根据页面上面的什么文字内容来判断网页是否加载完成
  758. $targetString = "DeepSeek"
  759.  
  760. do {
  761. # 获取剪贴板内容
  762. $clipboardContent = Get-Clipboard
  763.  
  764. # 如果包含目标字符串
  765. if ($clipboardContent -like "*$targetString*") {
  766.  
  767. Set-Clipboard -Value $clipboard
  768.  
  769. # 设置坐标并移动鼠标到输入框
  770. $X = [math]::Round(700 / $scaling)
  771. $Y = [math]::Round(855 / $scaling)
  772. [User32]::SetCursorPos($X, $Y)
  773.  
  774. # 等待一段时间
  775. Start-Sleep -Milliseconds 500
  776.  
  777. # 模拟鼠标左键按下和抬起事件
  778. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  779. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  780.  
  781. # 发送 Ctrl+V 组合键
  782. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  783. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  784. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  785. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  786.  
  787. # 等待一段时间
  788. Start-Sleep -Milliseconds 200
  789.  
  790. # 模拟按下回车键
  791. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  792. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  793.  
  794. # 跳出循环
  795. break
  796.     } else {
  797.  
  798. # 设置坐标并移动鼠标到页面空白处
  799. $X = [math]::Round(1888 / $scaling)
  800. $Y = [math]::Round(1008 / $scaling)
  801. [User32]::SetCursorPos($X, $Y)
  802.  
  803. # 模拟鼠标左键按下和抬起事件
  804. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  805. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  806.  
  807. # 发送 Ctrl+A 组合键
  808. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  809. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  810. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  811. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  812.  
  813. # 发送 Ctrl+C 组合键
  814. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  815. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  816. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  817. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  818.  
  819. # 等待一段时间
  820. Start-Sleep -Milliseconds 200
  821.     }
  822. } while ($true)
  823.  
  824. ###############################################################
  825.  
  826. # 知乎直答
  827. Start-Process "https://zhida.zhihu.com/"
  828.  
  829. # 等待一段时间
  830. Start-Sleep -Milliseconds 1000
  831.  
  832. # 根据页面上面的什么文字内容来判断网页是否加载完成
  833. $targetString = "深度思考"
  834.  
  835. do {
  836. # 获取剪贴板内容
  837. $clipboardContent = Get-Clipboard
  838.  
  839. # 如果包含目标字符串
  840. if ($clipboardContent -like "*$targetString*") {
  841.  
  842. Set-Clipboard -Value $clipboard
  843.  
  844. # 设置坐标并移动鼠标到DeepSeek开关
  845. $X = [math]::Round(842 / $scaling)
  846. $Y = [math]::Round(583 / $scaling)
  847. [User32]::SetCursorPos($X, $Y)
  848.  
  849. # 等待一段时间
  850. Start-Sleep -Milliseconds 500
  851.  
  852. # 模拟鼠标左键按下和抬起事件
  853. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  854. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  855.  
  856. # 等待一段时间
  857. Start-Sleep -Milliseconds 200
  858.  
  859. # 设置坐标并移动鼠标到输入框
  860. $X = [math]::Round(765 / $scaling)
  861. $Y = [math]::Round(515 / $scaling)
  862. [User32]::SetCursorPos($X, $Y)
  863.  
  864. # 等待一段时间
  865. Start-Sleep -Milliseconds 200
  866.  
  867. # 模拟鼠标左键按下和抬起事件
  868. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  869. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  870.  
  871. # 发送 Ctrl+V 组合键
  872. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  873. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  874. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  875. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  876.  
  877. # 等待一段时间
  878. Start-Sleep -Milliseconds 200
  879.  
  880. # 模拟按下回车键
  881. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  882. [User32]::keybd_event($VK_ENTER, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  883.  
  884. # 跳出循环
  885. break
  886.     } else {
  887.  
  888. # 设置坐标并移动鼠标到页面空白处
  889. $X = [math]::Round(1888 / $scaling)
  890. $Y = [math]::Round(1008 / $scaling)
  891. [User32]::SetCursorPos($X, $Y)
  892.  
  893. # 模拟鼠标左键按下和抬起事件
  894. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  895. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  896.  
  897. # 发送 Ctrl+A 组合键
  898. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  899. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  900. [User32]::keybd_event($VK_A, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  901. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  902.  
  903. # 发送 Ctrl+C 组合键
  904. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  905. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  906. [User32]::keybd_event($VK_C, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  907. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  908.  
  909. # 等待一段时间
  910. Start-Sleep -Milliseconds 200
  911.     }
  912. } while ($true)
  913.  
  914. ###############################################################
  915.  
  916. # 小红书点点
  917.  
  918. # 检查微信是否正在运行
  919. $wechatProcess = Get-Process -Name "WeChat" -ErrorAction SilentlyContinue
  920.  
  921. if ($wechatProcess) {
  922.     Write-Host "WeChat 正在运行,继续执行后续命令..."
  923.     # 使用调用运算符来启动
  924. & "C:\Program Files\Tencent\WeChat\WechatAppLauncher.exe" -launch_appid=wx070399b52c93101b
  925.  
  926. # 等待1秒后激活窗口
  927. Start-Sleep -Milliseconds 1000
  928.  
  929. # 获取窗口名包含 "点点" 的所有窗口
  930. $Windows = Get-Process | Where-Object {$_.MainWindowTitle -like "*点点*"}
  931.  
  932. # 检查是否找到窗口
  933. if ($Windows) {
  934.   # 循环遍历找到的窗口 (如果有多个)
  935.   foreach ($Window in $Windows) {
  936.     # 获取窗口句柄
  937.     $hWnd = $Window.MainWindowHandle
  938.  
  939.     # 激活窗口到前台
  940.     [User32]::ShowWindow($hWnd, [User32]::SW_SHOWNORMAL) # 确保窗口不是最小化
  941.     [User32]::SetForegroundWindow($hWnd) | Out-Null # 将窗口置于前台并忽略输出
  942.   }
  943. } else {
  944.   Write-Host "未找到窗口名包含 '点点' 的窗口。"
  945. }
  946.  
  947. # 等待1秒后激活窗口
  948. Start-Sleep -Milliseconds 1000
  949.  
  950. # 设置坐标并移动鼠标到输入框
  951. $X = [math]::Round(800 / $scaling)
  952. $Y = [math]::Round(960 / $scaling)
  953. [User32]::SetCursorPos($X, $Y)
  954.  
  955. # 等待一段时间
  956. Start-Sleep -Milliseconds 1500
  957.  
  958. # 模拟鼠标左键按下和抬起事件
  959. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  960. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  961.  
  962. # 等待一段时间
  963. Start-Sleep -Milliseconds 500
  964.  
  965. # 发送 Ctrl+V 组合键
  966. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  967. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYDOWN, [UIntPtr]::Zero)
  968. [User32]::keybd_event($VK_V, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  969. [User32]::keybd_event($VK_CTRL, 0, $KEYEVENTF_KEYUP, [UIntPtr]::Zero)
  970.  
  971. # 等待一段时间
  972. Start-Sleep -Milliseconds 500
  973.  
  974. # 设置坐标并移动鼠标到发送按钮
  975. $X = [math]::Round(1192 / $scaling)
  976. $Y = [math]::Round(960 / $scaling)
  977. [User32]::SetCursorPos($X, $Y)
  978.  
  979. # 模拟鼠标左键按下和抬起事件
  980. [User32]::mouse_event($MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)
  981. [User32]::mouse_event($MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)
  982.  
  983. } else {
  984.     Write-Host "微信未运行,无法打开点点进行搜索"
  985. }
  986.  
  987. ################################################################
  988. # 清理资源
  989. [KeyboardHook]::UnsetHook()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement