Bonjour à tous,

Je cherche à changer la culture d'un processus particulier sans pour autant la changer pour les autres applications de mon environnement.

Concrètement, je souhaite passer par un petit launcher en .net qui me permettrait de forcer un clavier particulier pour mon application (non .net).

Mon soucis actuel est que mon launcher est lui bien basculé, mais pas le processus qu'il exécute.
Le bout de code qui ne fonctionne actuellement pas, ou j'ai essayé de passer le clavier au nouveau processus:

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
        private void EnvoyerMsg(IntPtr hWnd, string PaysID)
        {
            IntPtr Layout;
            IntPtr lRes;
            IntPtr Param1 = new IntPtr(1);
 
            Layout = LoadKeyboardLayout(PaysID, KLF_ACTIVATE);
            StringBuilder sb = new StringBuilder(256);
 
 
             SendMessage(
              hWnd,      // handle to destination window
              80,       // message
              Param1,  // first message parameter
              Layout   // second message parameter
              );
 
            SendMessageTimeout(hWnd,
                WM_INPUTLANGCHANGEREQUEST,
                IntPtr.Zero,
                Layout, 
                SendMessageTimeoutFlags.SMTO_ABORTIFHUNG, 
                1000,
                out lRes);
        }
Ou PaysID est l'identifiant clavier et hWnd est le pointeur du nouveau processus lancé.

D'avance merci pour tout coup de pouce.

Bonne journée à tous.