Gibt es eine Möglichkeit, die neue Taschenrechneranwendung in Windows 10 zu zwingen, nur eine Instanz von sich selbst zu öffnen?

Gibt es eine Möglichkeit, die neue Taschenrechneranwendung in Windows 10 zu zwingen, nur eine Instanz von sich selbst zu öffnen?

Ich habe gerade ein Upgrade von Windows 8.1 auf Windows 10 Pro durchgeführt und bin mit der neuen Taschenrechner-Anwendung sehr zufrieden, abgesehen von der Tatsache, dass jedes Mal, wenn ich die Taschenrechner-Taste auf meiner Tastatur verwende, eine neue Instanz geöffnet wird.

Gibt es eine Möglichkeit, es zu einer Einzelinstanzanwendung zu machen, wie es beim Taschenrechner in Windows 8.1 der Fall war, ohne dass ich eine andere Anwendung verwenden muss?

Antwort1

VerwendenAHK. Ordnen Sie Ihre Taschenrechnertaste dem folgenden Skript zu (dieses ist Win+ zugeordnet Z):

#z::
IfWinExist Calculator
WinActivate
else
Run calculator://
return

Antwort2

Starten Sie einfach die App und heften Sie sie an die Taskleiste an. Dann starten Sie sie per Klick oder mit den Tastenkombinationen Win+1, Win+2 usw. Sowohl beim Klicken als auch mit der Tastenkombination wird nur eine Instanz der App ausgeführt. Wenn die Instanz bereits ausgeführt wird und Sie die Tastenkombination wiederholen, rufen Sie nur den Fokus der App auf.

Wenn Sie sich jemals dazu entschließen, eine weitere Instanz zu starten, klicken Sie einfach mit der rechten Maustaste auf das Symbol in der Taskleiste und dann auf den Namen der App. Meiner Meinung nach steigert die Verwendung dieser Tastenkombinationen die Arbeitseffizienz und verringert die geistige Erschöpfung deutlich.

Screenshot der Taschenrechner-App

Antwort3

Eine Methode, die nicht beinhaltetAHK:

Ich habe mich für eine andere Methode entschieden, bei der ich ein Skript an einer für %PATH% sichtbaren Stelle platziert und die Registrierung so bearbeitet habe, dass das Skript aufgerufen wird.

Diese Registrierungsänderung lautet wie folgt:

Setzen Sie den Schlüssel
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AppKey\18\ShellExecute
auf den Wert „scriptname.wsf“, also den von Ihnen gewählten Namen für die Skriptdatei.

Das Skript, das ich verwendet habe, war:

<package>
   <job id="vbs">
      <script language="VBScript">
         Set WshShell = WScript.CreateObject ("WScript.Shell")
         Set colProcessList = GetObject("Winmgmts:").ExecQuery ("Select * from Win32_Process")
         
         For Each objProcess in colProcessList
         If objProcess.name = "Calculator.exe" then
         vFound = True
         End if
         Next
         
         If vFound then
         WshShell.AppActivate "Calculator"
         Else
         WshShell.run "calc.exe", 5, false
         End If
      </script>
   </job>
</package>

Dies basierte auf einer Antwort auf die Stack Overflow-FrageSo führen Sie eine einzelne Instanz des Taschenrechners (calc.exe) in Windows aus.

Aber das Skript, das sie geschrieben haben, funktionierte unter Windows 10 nicht, also habe ich einige Teile aus anderen Quellen kombiniert, um mein eigenes zu erstellen, das funktioniert. Ein Wunder, da ich nichts über VBScript weiß, aber es ist eine funktionierende Option, wenn Sie AHK nicht ausführen möchten.

verwandte Informationen