/ 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
Control-Escape
Fra : Toke Gaarde Schmidt


Dato : 05-03-01 08:44

Hej

Nu må jeg have hjælp. Jeg ønsker at sende kommandoen Contr + Ecape til
computeren, så jeg automatisk får åbnet START-menuen. Jeg har prøvet
meget,
f. eks: Sendkeys("^{ESC}") og Sendkeys("^" & chr(27))), men intet
virker.

Hvad gør man?

Hilsen

Toke


 
 
Torsten Iversen (05-03-2001)
Kommentar
Fra : Torsten Iversen


Dato : 05-03-01 18:13

In article <3AA3444D.DB47B9CD@cpa.spo.dk>, Toke Gaarde Schmidt wrote:
>Hej
>
>Nu må jeg have hjælp. Jeg ønsker at sende kommandoen Contr + Ecape til
>computeren, så jeg automatisk får åbnet START-menuen. Jeg har prøvet
>meget,
>f. eks: Sendkeys("^{ESC}") og Sendkeys("^" & chr(27))), men intet
>virker.
>
>Hvad gør man?
>

Du kunne prøve at kigge lidt på Windows APIet eller, hvis du har et
grafisk programmeringsværktøj, forsøge at finde en biblioteksfunktion, der
kan manipulere startmenuen. Den må da være repræsenteret som et objekt,
der kan håndtere Windows Messages ligesom så mange andre
brugerfladeting. Hvis du kan finde et handle til den fra dit program, må
du kunn komponere en ctrl-esc event og sende den med PostMessage(). Eller
måske er der ligefrem et funktionskald til at bringe menuen frem.

Hvis du ikke kan programmere til Windows er der måske en haj i gruppen,
der kan trylle et program frem på ingen tid. Jeg ville skulle bruge lang
tid på at rode rundt i dokumentationen for at gøre det.

Torsten


Thomas J. (05-03-2001)
Kommentar
Fra : Thomas J.


Dato : 05-03-01 21:15

Hej Toke
Du kan evt. bruge "postmessage".
Jeg har lavet et eksempel som virker i Win95.

'Denne kode placeres i et modul:
*Public Const WM_LBUTTONDOWN = &H201

*Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal
lpClassName As String, ByVal lpWindowName *As String) As Long
*Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal
hWnd1 As Long, ByVal hWnd2 As Long, *ByVal lpsz1 As String, ByVal lpsz2 As
String) As Long
*Declare Function PostMessage Lib "user32" Alias "PostMessageA" (ByVal hwnd
As Long, ByVal wMsg As Long, ByVal *wParam As Long, ByVal lParam As Long) As
Long
'Modul slut.

'Denne kode placeres under koden til form1 - husk at putte en "command
button" på form1:
*Private Sub Command1_Click()
*Dim TopWin, ChildWin As Long

* TopWin = FindWindow("Shell_TrayWnd", vbNullString)
* If CBool(TopWin) Then
* ChildWin = FindWindowEx(TopWin, 0, "Button", vbNullString)
* If CBool(ChildWin) Then
* PostMessage ChildWin, WM_LBUTTONDOWN, 0, &H50005
* End If
* End If
*End Sub
'Formkode slut

Jeg håber du kan bruge det.

Med venlig hilsen
Thomas J.
thomas@moontown.net

"Toke Gaarde Schmidt" <tgs@cpa.spo.dk> skrev i en meddelelse
news:3AA3444D.DB47B9CD@cpa.spo.dk...
> Hej
>
> Nu må jeg have hjælp. Jeg ønsker at sende kommandoen Contr + Ecape til
> computeren, så jeg automatisk får åbnet START-menuen. Jeg har prøvet
> meget,
> f. eks: Sendkeys("^{ESC}") og Sendkeys("^" & chr(27))), men intet
> virker.
>
> Hvad gør man?
>
> Hilsen
>
> Toke
>



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408896
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste