Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Programm beenden

Frage Entwicklung Batch & Shell

Mitglied: garciam

garciam (Level 1) - Jetzt verbinden

07.07.2014, aktualisiert 08.07.2014, 2162 Aufrufe, 4 Kommentare, 4 Danke

Hallo zusammen

Ich habe ein Problem, bei dem ich nicht weiterkomme...

Ich muss ein Programm zu einer bestimmten Zeit schliessen lassen. Dafür will ich ein Script per Aufgabenplanung täglich ausführen lassen. Versucht habe ich es mit Powershell:

get-process prowin32 | %{ $_.closemainwindow() }
Get-Process prowin32 | Stop-Process
Get-Process prowin32 | Kill

Die Varianten funktionieren grundsätzlich alle, jedoch wird bei stop-process und kill der Benutzer gesperrt. Bei closewindow steht leider die Abbrechen-Box im Weg. Ich kann also nicht einfach den Prozess abschiessen oder das Fenster schliessen, ich müsst den "Abbrechen" Button per Script betätigen können. Geht das und wie stellt man das am besten an?

ecee300cb35afb8c7e17cef0abe58de9 - Klicke auf das Bild, um es zu vergrößern

Vielen Dank für eure Hilfe!

Gruss


Mitglied: Alex-123
07.07.2014 um 16:03 Uhr
Hi garciam,

hab da mal ein kleines VBScript gebastelt.

Ich nehme an das zu beendende Programm heisst PROWIN32.EXE ???

Ich hoffe ich konnte dir weiterhelfen.

Bei Fragen immer her damit ;)

VG Alex

01.
Set oWsh = CreateObject("WScript.Shell")  
02.
	oWsh.Run("cmd.exe /c " & chr(34) & "taskkill /f /im prowin32.exe" & chr(34)) 
03.
 
04.
msgbox"Das geöffnete Programm wurden beendet!",vbCritical,"Programm beenden"	 
05.
 
Bitte warten ..
Mitglied: garciam
07.07.2014, aktualisiert um 16:10 Uhr
Hallo Alex

Danke für deinen Vorschlag, aber dein VBScript killt den Prozess und somit wird der User gesperrt. Das Programm müsste über "Abbrechen" beendet werden können.

Gruss
garciam
Bitte warten ..
Mitglied: colinardo
LÖSUNG 07.07.2014, aktualisiert 08.07.2014
Moin,
wenn das Ding so besch... programmiert ist dann wirst du wohl über Sendkeys gehen müssen um den Abbrechen Button zu betätigen (dazu muss aber jemand angemeldet sein wenn das Script läuft)
01.
[void] [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.VisualBasic") 
02.
[void] [System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") 
03.
get-process prowin32 | %{ 
04.
$_.closemainwindow() 
05.
# Fenster in den Fokus bringen 
06.
[Microsoft.VisualBasic.Interaction]::AppActivate($_.Id) 
07.
# 0,5 Sekunden pausieren das das Fenster in den Vordergrund kommen kann 
08.
sleep -milliseconds 500 
09.
# ALT-C drücken um den Abbrechen-Button zu betätigen 
10.
[System.Windows.Forms.SendKeys]::SendWait('%c') 
11.
}
Wenn das nicht hinhaut nehme AutoIT dafür.

Grüße Uwe
Bitte warten ..
Mitglied: garciam
08.07.2014, aktualisiert um 14:47 Uhr
Hallo Colinardo

Dein Script funktionierte leider nicht, aber mit AutoIT hab ich es hinbekommen. Danke für den super Tipp.

01.
CloseScanImport() 
02.
 
03.
Func CloseScanImport() 
04.
 
05.
    ; Wait 10 seconds for the window to appear. 
06.
    Local $hWnd = WinWait("[CLASS:ProFrame]", "", 10) 
07.
 
08.
    ; Send a mouse click to the edit control of ScanImport using the handle returned by WinWait. 
09.
    ControlClick($hWnd, "", "Button1") 
10.
 
11.
    ; Wait for 2 seconds. 
12.
    Sleep(2000) 
13.
 
14.
    ; Close the ScanImport window using the handle returned by WinWait. 
15.
    WinClose($hWnd) 
16.
EndFunc   ;==>CloseScanImport
Gruss
garciam
Bitte warten ..
Ähnliche Inhalte
Windows Tools
Suche Programm um Log auszuwerten + Mail notify (2)

Frage von NetzwerkDude zum Thema Windows Tools ...

Windows Tools
gelöst Was treibt das Programm? (11)

Frage von daho2016 zum Thema Windows Tools ...

Neue Wissensbeiträge
Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(6)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(6)

Anleitung von BassFishFox zum Thema Windows 10 ...

Administrator.de Feedback

Tipp: Ungelöste Fragen ohne Antwort in Tickeransicht farblich hinterlegen

Tipp von pattern zum Thema Administrator.de Feedback ...

Heiß diskutierte Inhalte
Windows Server
gelöst Update BackupExec 2015 auf 2016 führt zu SQL-Server Problem (16)

Frage von montylein1981 zum Thema Windows Server ...

Batch & Shell
gelöst Batch um Benutzer aus Sitzung abzumelden (15)

Frage von zeroblue2005 zum Thema Batch & Shell ...

Linux
gelöst Google Chrome startet nicht (12)

Frage von Thomas91 zum Thema Linux ...