RunApplicationEx
(XAPI2000)
Deklaration VB 6.0
Function RunApplicationEx (ByVal FName As String, ByVal Parameters
As String, ProcessID As Long) As Boolean
Deklaration VB.NET
Function RunApplicationEx (ByVal FName As String, ByVal Parameters
As String, ProcessID As Integer) As Boolean
Beskrivning
Startar ett program och returnerar applikationens process-ID.
Denna ID kan sedan bl a användas för att stänga ett program utifrån
eller bevaka programmet. Parametern FName specificerar filnamnet
på applikationen (inkl. sökväg) och via parametern Parameters
anger du eventuella inparametrar till programmet. Ska inga inparametrar
skickas sätts denna parameter till en tom sträng (""). Applikationens
process-ID returnerars via parametern ProcessID.
Funktionen
TerminateApplication kan användas för
att stänga programmet utifrån och funktionen
IsApplicationActive kan användas för
att testa om applikationen är aktiv. Dessa båda funktioner tar den
process-ID som erhållits med denna funktion som inparameter.
Begränsningar i Windows Vista / Windows 7
Denna funktion kan inte starta program som kräver administratörsrättigheter
ifall funktionen anropas från ett program som körs med standardrättigheter.
Om programmet som ska startas ska köras med standardrättigheter
eller om det program som funktionen anropas i redan har administratörsrättigheter
fungerar funktionen utan begränsningar.
Returvärden
Har allt gått bra och programmet startats på ett lyckat sätt
returnerar funktionen True. Vid fel returnerar funktionen
False..
Se även
TerminateApplication,
IsApplicationActive
Exempel (VB 6.0)
Exemplet nedan startar Windows
miniräknare (CALC.EXE) när användaren trycker på knappen CmdStart
och stänger samma räknare när användaren trycker på knappen CmdTerminate.
Applikationens process-Id lagras i den globala variabeln ProcessID.
Dim ProcessID As Long
'
Starta ett program och lagra undan process-ID
Private Sub CmdStart_Click()
If ProcessID = 0 Then RunApplicationEx GetWindowsDir() + "\Calc.exe",
"", ProcessID
End Sub
'
Stäng aktivt program
Private Sub CmdTerminate_Click()
If ProcessID <> 0 Then TerminateApplication ProcessID, 100
ProcessID = 0
End Sub
|
|