/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
Tjekke om et andet program kører..
Fra : Franz Jäger


Dato : 14-07-01 16:36

er der en kommando til at tjekke om et andet program kører ??



 
 
Bjarke Walling Peter~ (22-07-2001)
Kommentar
Fra : Bjarke Walling Peter~


Dato : 22-07-01 19:08

Franz Jäger skrev:
> er der en kommando til at tjekke om et andet program kører ??

Jeg ved ikke om der findes én kommando...
Men det kan gøres på forskellige måder - alt efter hvad man vil.
Hvis man vil tjekke om der kører en anden instance af programmet selv, kan
man gøre sådan her:

' Retunerer True hvis der kører en anden instance af programmet:
App.PrevInstance

Hvis man vil tjekke om et andet program kører og kender vinduets titel, kan
man gøre sådan: (tjekker om et vindue med en bestemt titel findes - denne
metode skal nok hovedsageligt kun bruges til programmer man ikke selv har
lavet)

Private Declare Function GetWindow Lib "user32" _
(ByVal hWnd As Long, ByVal wCmd As Long) As Long
Private Declare Function GetWindowTextLength Lib _
"user32" Alias "GetWindowTextLengthA" _
(ByVal hWnd As Long) As Long
Private Declare Function GetWindowText Lib "user32" _
Alias "GetWindowTextA" (ByVal hWnd As Long, _
ByVal lpString As String, ByVal cch As Long) As Long

Private Function WindowExists(WindowTitle As String) As Boolean
Dim hWnd As Long
Dim Length As Long
Dim Title As String
WindowExists = False
hWnd = GetWindow(Me.hWnd, 0)
While hWnd <> 0 And WindowExists = False
Length = GetWindowTextLength(hWnd) + 1
Title = Space(Length)
If GetWindowText(hWnd, Title, Length) > 0 Then
If WindowTitle = Left(Title, Length - 1) Then
WindowExists = True
End If
End If
hWnd = GetWindow(hWnd, 2)
Wend
End Function

Hvis du selv laver begge programmer (det der skal tjekkes og det der
tjekker) er der vist en smart måde at få dem til at kommunikere på - hvilket
er langt bedre end at søge efter vinduetitlen... jeg kender den bare ikke.


- Bjarke Walling Petersen



Erlend Klakegg Bergh~ (22-07-2001)
Kommentar
Fra : Erlend Klakegg Bergh~


Dato : 22-07-01 19:09

Bjarke Walling Petersen <bwp@bwp.dk> skrev i
news:9jf4n1$bod$1@news.cybercity.dk
> Franz Jäger skrev:
> > er der en kommando til at tjekke om et andet program kører ??
>
> Jeg ved ikke om der findes én kommando...
> Men det kan gøres på forskellige måder - alt efter hvad man vil.
> Hvis man vil tjekke om der kører en anden instance af programmet selv, kan
> man gøre sådan her:
>
> ' Retunerer True hvis der kører en anden instance af programmet:
> App.PrevInstance
>
> Hvis man vil tjekke om et andet program kører og kender vinduets titel,
kan
> man gøre sådan: (tjekker om et vindue med en bestemt titel findes - denne
> metode skal nok hovedsageligt kun bruges til programmer man ikke selv har
> lavet)
>
> Private Declare Function GetWindow Lib "user32" _
> (ByVal hWnd As Long, ByVal wCmd As Long) As Long
> Private Declare Function GetWindowTextLength Lib _
> "user32" Alias "GetWindowTextLengthA" _
> (ByVal hWnd As Long) As Long
> Private Declare Function GetWindowText Lib "user32" _
> Alias "GetWindowTextA" (ByVal hWnd As Long, _
> ByVal lpString As String, ByVal cch As Long) As Long
>
> Private Function WindowExists(WindowTitle As String) As Boolean
> Dim hWnd As Long
> Dim Length As Long
> Dim Title As String
> WindowExists = False
> hWnd = GetWindow(Me.hWnd, 0)
> While hWnd <> 0 And WindowExists = False
> Length = GetWindowTextLength(hWnd) + 1
> Title = Space(Length)
> If GetWindowText(hWnd, Title, Length) > 0 Then
> If WindowTitle = Left(Title, Length - 1) Then
> WindowExists = True
> End If
> End If
> hWnd = GetWindow(hWnd, 2)
> Wend
> End Function
>
> Hvis du selv laver begge programmer (det der skal tjekkes og det der
> tjekker) er der vist en smart måde at få dem til at kommunikere på -
hvilket
> er langt bedre end at søge efter vinduetitlen... jeg kender den bare ikke.
>

Går det ikke an å kommuniserer slik som man kommuniserer til WinAmp ???

Jeg finner ikke noe informasjon om hvordan få programmet sitt til å ta imot
informasjon på den måten, men som alltid hadde det vært fint om noen visste
noe ... (og det er det også vanligvis ...)

--

Vennlig hilsen Erlend
erlendkb@c2i.net
ICQ 42053660
http://www.kleggen.com/



Thomas Daugaard (02-09-2001)
Kommentar
Fra : Thomas Daugaard


Dato : 02-09-01 01:17

Du kan bruge API'et FindWindow() eller FindWindowEx() til at søge efter et
bestemt vindue. Hvis funktionen returnerer 0
kører programmet ikke. Hvis <> 0 får du vinduets hWnd.

Se mere om FindWindow() og FindWindowEx() på www.vbapi.com ..

Mvh, Thomas Daugaard

"Franz Jäger" <freakazoid@superheros.as> wrote in message
news:9iporh$e88$1@news.cybercity.dk...
> er der en kommando til at tjekke om et andet program kører ??
>
>



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste