Вниз
Скачать: CL | DM;

не работает сообщение диалогового окна   Найти похожие ветки 

← →
stainer   (2002-08-04 01:50) [0]

Всем привет!
Не пашет сообщение от диалога cdm_getfolderpath
sendmessage(hwnd,cdm_getfolderpath,sizeof(buffer),integer(@buffer))

Точнее переменная buffer не заполняется путём.
В чём дело???????
Спасибо!!!!


← →
Suntechnic ©   (2002-08-04 09:21) [1]

А что такое buffer ты бы для приличия написал бы всё таки...
У меня сейчас никаких хелпов под рукой нет, но существует предположение, что третьим параметром в ф-цию должен передаваться размер буфера(так обычно вызываются API ф-ции), а также существует предположение, что результатом операции sizeof() над таинственным buffer-ом всегда будет 4(размер в байтах указателя), но в любом случае для прояснения картины надо знать что такое buffer...


← →
stainer   (2002-08-04 13:39) [2]

buffer - это массив типа

buffer: array [0..max_path] of char;


← →
Неотеничный Педоморф   (2002-08-04 14:01) [3]

А окно hwnd создано тем же процессом, в котором вызывается SendMessage?


← →
stainer   (2002-08-04 19:26) [4]

да


← →
Неотеничный Педоморф   (2002-08-04 19:48) [5]

Нужно посмотреть код.

Насколько я понимаю, hwnd -- хэндл диаложека Open/SaveAs, и вызов происходит в то время, когда этот диаложек отображается на экране.

Если так, попробуйте тот же приём с CDM_GETFILEPATH. Интересны результаты.




← →
Неотеничный Педоморф   (2002-08-04 20:29) [6]

А так, например:

char *st = (char *)malloc(260);
OutputDebugString("Timer!");
st[0] = "*"; st[1] = 0;
if (IsWindow(OpenDialog1->Handle)) // TOpenDialog
{
SendMessage(GetParent(OpenDialog1->Handle),CDM_GETFOLDERPATH,259,(long)(&st[1])); // hwnd == Form1->Handle
OutputDebugString(st);
SendMessage(GetParent(OpenDialog1->Handle),CDM_GETFILEPATH,259,(long)(&st[1]));
OutputDebugString(st);
} else
{
OutputDebugString("no dialog");
};
free(st);


← →
stainer   (2002-08-04 22:26) [7]

Точнее я немного неправильно сказал
Когда открывается диалог из моей формы то всё нормально (путь возвращается), а для другого диалога, открытого не из моей рограммы переменная, содержащая путь пуста


← →
Слесарь Матерящийся   (2002-08-04 23:42) [8]

Ну, тогда всё правильно! Так и должно быть.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.017 c
3-73487
Den2
2002-08-28 20:55
2002.09.23
Как работает Refresh для баз Access?


14-73875
PVOzerski
2002-08-27 21:29
2002.09.23
О tPaintBrush


6-73796
Феликс
2002-07-20 22:09
2002.09.23
Почему когда работаю с wininet все виснет?


1-73635
Демонов Е.В.
2002-09-10 17:07
2002.09.23
MethodAddress


1-73600
still
2002-09-12 10:35
2002.09.23
HTML Help Workshop




   Наверх