Bonjour bonjour a vous, Ô peu nombreux programmeurs de Compact Framework.
Voila, j'ai développez une application pour Windows CE (pas PocketPC) en VB.NET, et comme beaucoup d'autre je l'imagine on me demande que l'application passe par dessus la barre des taches.
En faisant deux jours de recherches, j'ai trouver 25 sources de codes différents. D'ailleurs a chaque explication de ces sources, tout le monde dis: "Le code des autres ne marchaient pas pour moi, voici le mien!"
J'ai donc utilisé du code VB ou C#, fais mes dll, ca a bien marché deux ou trois fois, mais pas d'une manière attendu:
La barre des taches "s'efface", mais par contre aucune fenêtre ne va par dessus. Je me retrouve donc avec une bande de fond d'écran bleu en bas.
Alors je voudrai savoir si quelqu'un aurai une solution Génial que Microsoft aurai bien évidemment prévu, mais pas documenté?
Merci mille fois d'avance a ceux qui m'aideront dans mon périple.
Exemple tipic de code simple mais avec le même résultat:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 public static class pdaTaskBar { [DllImport("Coredll.dll", EntryPoint = "FindWindow")] private static extern System.IntPtr FindWindow(string lpClassName, string lpWindowName); [DllImport("Coredll.dll", EntryPoint = "SetWindowPos", SetLastError = true)] private static extern bool SetWindowPos(System.IntPtr IntPtr, System.IntPtr hWndInsertAfter, int X, int Y, int cx, int cy, int uFlags); const int TASKBAR_SHOW = 0x40; const int TASKBAR_HIDE = 0x64; public static void HideTaskbar() { IntPtr taskBarHandle; taskBarHandle = FindWindow("HHTaskBar", ""); SetWindowPos(taskBarHandle, IntPtr.Zero, 0, 0, 0, 0, TASKBAR_HIDE); } public static void ShowTaskbar() { IntPtr taskBarHandle; IntPtr HWND_TOPMOST = new IntPtr(-1); taskBarHandle = FindWindow("HHTaskBar", ""); SetWindowPos(taskBarHandle, HWND_TOPMOST, 0, 295, 240, 25, TASKBAR_SHOW); } }
Partager