Так что, как говорится в теме, я хочу запустить Chrome и держать окно всегда наверху, возможно ли это с помощью скрипта или чего-то еще? Я немного погуглил по этой теме, и если на вопрос дан ответ, они в основном относятся к autohotkey, но это не то, что я хочу. Разве нельзя написать небольшой сценарий, который мог бы держать программу на вершине для меня? И если это работает, как я могу запустить его с определенного URL?

ОС: Windows 10

Предыстория: если игры не поддерживают надстройки, я часто видел программы "всегда сверху", которые можно перетаскивать над игрой, чтобы вы могли получить надстройку поверх игры. В моем случае это "ржавчина", официальный сайт запускает живую карту, но в игре нет мини-карты, поэтому я подумал, что было бы неплохо, чтобы хром всегда был сверху и перетаскивал его поверх игры, чтобы я получил мини-карту :)

2 ответа2

1

Вы можете попробовать этот скрипт PowerShell. Отрегулируйте $exe path, если требуется.

# Your executable here
# $exe = "notepad"
$exe = "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"

function Set-TopMost($handle) {
  $FnDef = '
  [DllImport("user32.dll")]
  public static extern bool SetWindowPos(int hWnd, int hAfter, int x, int y, int cx, int cy, uint Flags);
  ';
  $user32 = Add-Type -MemberDefinition $FnDef -Name 'User32' -Namespace 'Win32' -PassThru
  $user32::SetWindowPos($handle, -1, 0,0,0,0, 3)
}

$pname = [System.IO.Path]::GetFileNameWithoutExtension($exe)

$p = (Get-Process $pname -ErrorAction "SilentlyContinue") | ? { $_.MainWindowHandle -ne 0 }
if ($p -eq $null) {
  Write-Host "Process '$pname' not found, starting: $exe"
  & $exe
  Write-Host "Waiting for process '$pname'"
  while ($p -eq $null) {
    sleep -Milliseconds 100
    $p = (Get-Process $pname -ErrorAction "SilentlyContinue") | ? { $_.MainWindowHandle -ne 0 }
  }
}

$p.MainWindowHandle
Set-TopMost $p.MainWindowHandle
-1

Чтобы держать Chrome на вершине, попробуйте это приложение Chrome:https://chrome.google.com/webstore/detail/window-options-sample/cfcgoifcnpnadlhhoolkemkjkhoajfmk

Или вы можете загрузить отдельную программу с множеством полезных функций в окнах под названием "OnTopReplica", которую можно бесплатно загрузить по адресу : https://ontopreplica.codeplex.com

Чтобы открыть определенную страницу при запуске Chrome, вы можете изменить это в настройках в настройках Chrome или добавить переключатель командной строки в ярлык Chrome.exe:

--new-tab-page-1 http://www.yoursite.com

Надеюсь, это поможет.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .