Hallo,
ich möchte nur eine Instanz meines Programmes zulassen und wenn der Anwender es noch einmal zu starten versucht automatisch zur 1. Instanz gewechselt wird.
Edit1:
Dies versuche ich mit folgendem Code zu erreichen
Edit2: größeren Auszug aus Code in Spoiler
Spoiler anzeigen
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_outfile=Adressenverwaltung.exe
#AutoIt3Wrapper_Res_LegalCopyright=autoBert
#AutoIt3Wrapper_Res_Language=1031
#AutoIt3Wrapper_Add_Constants=n
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
; *** Start added by AutoIt3Wrapper ***
#include <EditConstants.au3>
; *** End added by AutoIt3Wrapper ***
; *** Start added by AutoIt3Wrapper ***
#include <StaticConstants.au3>
; *** End added by AutoIt3Wrapper ***
#include<ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <GuiTreeView.au3>
#include <GuiListView.au3>
#include <TreeViewConstants.au3>
#include <WindowsConstants.au3>
#include <GuiStatusBar.au3>
#include <SQLite.au3>
#include <SQLite.dll.au3>
#Include <Misc.au3>
Opt('GUIOnEventMode', 1)
Opt('MUSTDECLAREVARS' ,1)
Global $sTitel = 'AutoAdress Version 0.8.1'
If _Singleton($sTitel, 1) = 0 Then
MsgBox(64, $sTitel, $sTitel & ' ist bereits gestartet')
WinSetState($sTitel, "", @SW_SHOW)
WinActivate($sTitel) ;dies Zeile funktioniert nicht obwohl AutoAdress gestartet
;WinActivate("Unbenannt -") ;diese Zeile funktioniert wenn Notepad.exe gestartet
Exit
EndIf
Das Verhindern einer 2. Instanz klappt, aber er wechselt nicht zur bereits gestarteten EXE, kommischer weise kann ich aber ohne Probleme zu Notepad wechseln.
Wäre toll wenn jemanden eine Lösung zu dem Problem einfällt
mfg (Auto)Bert