Je sais que cette question a déjà été résolue. Voici mon problème. J'ai un formulaire Windows avec un bouton et une zone de texte. L'utilisateur entre des informations dans la zone de texte, et lorsque l'utilisateur clique sur le bouton, une instance de bloc-notes est lancée et le texte de la zone de texte est ensuite chargé dans le bloc-notes.Copie de texte dans une occurrence de bloc-notes en C#
Voici mon code (que je suis d'une question sur ce site)
[DllImport("user32.dll", EntryPoint = "FindWindowEx")]
public static extern IntPtr FindWindowEx(IntPtr hwndParent, IntPtr hwndChildAfter, string lpszClass, string lpszWindow);
[DllImport("User32.dll")]
public static extern int SendMessage(IntPtr hWnd, int uMsg, int wParam, string lParam);
private void btnCopyToNotepad_Click(object sender, EventArgs e)
{
StartNotepad();
Process[] notepads = Process.GetProcessesByName("notepad");
if (notepads.Length == 0) return;
if (notepads[0] != null)
{
Clipboard.SetText(textBox1.Text);
SendMessage(FindWindowEx(notepads[0].MainWindowHandle, new IntPtr(0), "Edit", null), 0x000C, 0, textBox1.Text);
}
}
private static void StartNotepad()
{
Process.Start("notepad.exe");
}
Quand je lance ce code, pas à pas dans le débogage, il fonctionne très bien, et la logique fait ce que son intention de le faire (copier le texte sur l'instance du bloc-notes). Lorsque je l'exécute en version, rien n'est copié sur l'instance du bloc-notes. Des idées pour lesquelles cela se passe? Non, je ne suis pas exécuter plusieurs instances de bloc-notes ..
Savez-vous ce qui ne fonctionne pas ou échoue? Est-ce qu'il trouve le processus de bloc-notes? Mettez des instructions de journalisation et voyez ce qui se passe. Vous devriez être en mesure de déboguer votre code – dgorti
Cela pose plutôt la question de savoir pourquoi vous ne seriez pas juste d'écrire un fichier texte et l'ouvrir dans le bloc-notes? – spender
Je pense que c'est une question légitime, le problème réside dans le tir SendMessage trop rapidement. J'ai essayé de mettre un Task.Delay dedans mais cela n'a pas aidé. –