![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
очень интересный вопрос [D5, Win95/98, WinME]
stainer a © (2002-05-10 01:04:00)Привет всем знатокам API И DELPHI!
Есть очень интересный вопрос, вероятней всего он даже уже обсуждался.
Мне нужно поместить текст в компонент RichEdit20W диалога
открытия или сохранения файла WORDa или EXELa(неважно).
Я делаю это следующим образом:
procedure TForm1.Button1Click(Sender: TObject);
var
h1,h2,h3:hwnd;
path:array [0 .. max_path] of char;
begin
path:="c:\program files\"; // К ПРИМЕРУ
h1:=findwindow(pchar("bosa_sdm_Mso96"),nil); //КЛАСС ДИАЛОГА ОТКРЫТИЯ ФАЙЛА WORDa97
h2:=findwindowex(h1,0,pchar("RichEdit20W"),nil);
sendmessage(h2,wm_settext,sizeof(path),integer(@path));
end;
Ну вот где буханка спряталась: в win ME - РАБОТАЕТ НОРМАЛЬНО,
А В WIN95,98 ЗАМЕСТО ТЕКТА ПОЯВЛЯЮТСЯ КАКИЕ-ТО КВАДРАТЫ (НЕ ПОСПОРЯДОЧНЫЕ КАРАКУЛИ,
А РОВНЕНЬКИЕ КВАДРАТИКИ)
Расчитываю на вашу помощь.
Заранее благодарен!
Вольный стрелок (2002-05-11 10:45:00) [1]а RichEdit2 в 98 есть?
GreatMaster (2002-05-10 23:12:00) [2]попробуй так:
path:="c:\program files\"#0; // оканчивается нулём
sendmessage(h2,wm_settext,0,integer(@path)); // wParam not used
Song (2002-05-10 18:11:00) [3]Обмен данными идёт в Unicode
Manulo (2002-05-10 10:49:00) [4]В натуре, или проблема шо шрифтами, или поставь более навороченную версию офиса....
stainer a (2002-05-10 07:50:00) [5]Не могу понять при чём тут шрмфты, если я посылаю вродебы простое сообщение (т.е. я думал что операционка сама должна с этим разобраться), вродебы в msdne к функции wm_settext нет никаких оговорок насчёт шрифтов и кодирок.
Как исправить глюк????????????????????????????????
GreatMaster (2002-05-10 01:26:00) [6]Это шрифты наверно кочевряжутся.
В Ме такой есть а в 9х нету.