string selected = folderBrowserDialog1.SelectedPath;
string add = selected + "/";
string path = add + listBox1.SelectedItem.ToString();
string text = System.IO.File.ReadAllText(@path);
StringBuilder sb1 = new StringBuilder();
sb1.Append(text);
IntPtr handle = process.MainWindowHandle;
IntPtr zero = new System.IntPtr(0);
var test = FindWindowEx(handle, zero, "RICHEDIT50W", null);
var but = FindWindowEx(handle, zero, "button", null);
StringBuilder nothing = new StringBuilder();
nothing.Append("");
SendMessage(test, WM_SETTEXT, 0, sb1);//sets text
System.Threading.Thread.Sleep(100);
SendMessage(but, BM_CLICK, 0, null);
System.Threading.Thread.Sleep(100);
SendMessage(test, WM_SETTEXT, 0, nothing);
Поэтому я пытаюсь установить текст текстового поля Scintilla (C ++) из формы C #. Перед обновлением программа использовала обычное текстовое поле RICHEDIT.
Задача ещё не решена.
Других решений пока нет …