J'écris une simple application Visual Basic pour m'aider à lancer des raccourcis clavier globaux en appuyant sur un bouton de la barre des tâches. Pour ce faire, je définis fondamentalement l'application pour se réduire à la barre des tâches. Je veux ensuite activer la barre des tâches elle-même (pas le programme précédemment actif) afin que je puisse utiliser SendKeys pour faire ces touches. Dans mon test, les touches sont enregistrées. C'est juste que je n'arrive pas à trouver comment activer la barre des tâches de mon programme.Mettre l'accent sur la barre des tâches
Si j'utilise AppActivate, j'ai besoin de l'identificateur de processus ou du titre de la fenêtre.
Il semble donc préférable d'utiliser Windows API pour le faire, mais je ne reçois pas le résultat que je suis après et je dois faire quelque chose de mal.
Voici mon code:
Public Class Form1
Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Integer
Private Sub Form1_GotFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.GotFocus
Me.WindowState = FormWindowState.Minimized
Dim intReturn As Integer = FindWindow("Shell_traywnd", "")
AppActivate(intReturn)
SendKeys.Send("%1")
MsgBox("test")
End Sub
End Class
L'erreur que je reçois est qu'il n'y a pas de processus en cours d'exécution de cette ID.
bien avec moi. Je ne peux pas me faire ça et je n'ai pas assez de réputation. Attendez, je peux signaler, ne pas voter à proximité ... Je l'ai juste signalé comme dupe. – LPChip