Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];

Вниз

win api   Найти похожие ветки 

 
Aleksey1   (2002-01-31 01:16) [0]

Всем привет! Помогите пожалуйста разобраьься в такой ситуации.
Значит, имеется стандартный диалог открытия файла, мне нужно взять путь по которому в данный момент отображаются файлы и папки,
читая MSDN я узнал, что это может сделать сообщение диалога CDM_GETFOLDERPATH,
и я пишу в своей программе:
procedure TForm1.Button1Click(Sender: TObject);
var aa:hwnd;
Path: array[0..MAX_PATH] of Char;
begin
aa:=findwindow("#32770","Обзор");//где #32770-класс окна(диалог), обзор-caption окна
if (aa>0) then BEGIN // если такое окно открыто
затем этому диалогу посылаю сообщение:
sendmessage(aa,CDM_GETFOLDERPATH,sizeof(path),integer(@path));//где аа-найденное окно,sizeof(path)-размер буфера, integer(@path)-указатель на переменную, которая должна получить взятый путь
END;
И ничего из этого хорошего не выходит, либо переменная path ПУСТА, либо содержит какие-то каракули.
Я даже смотрел исходник диалогов DIALOGS.PAS и убедился что сообщение послано правильно.
А вот если поместить этот код в OnFolderChange компонента OpenDialog, то при перемещении между папками в path заносится текущий путь

Пример:
procedure TForm1.OpenDialog1FolderChange(Sender: TObject);
var
Path: array[0..MAX_PATH] of Char;
begin
alex:=findwindow(nil,"alexey"); // окно OpenDialog1, caption я поменял специально
SendMessage(alex, CDM_GETFOLDERPATH,SizeOf(Path), Integer(@Path)); // сообщение которое посылается открытому окну
memo1.lines.Add(StrPas(Path)); // добавление путей в поле Memo
end;


 
unikum   (2002-01-31 19:27) [1]

Пришли мне адрес на который можно тебе выслать исходник:
Мой адрес:Dmitry_Mar@rambler.ru


 
alexey1   (2002-02-05 03:08) [2]

буду очень рад если поможеш мне, мой адрес: alekssys@mail.ru


 
alexey1   (2002-02-05 03:13) [3]

буду очень рад если поможеш мне, мой адрес: alekssys@mail.ru


 
alexey1   (2002-02-13 04:07) [4]

привет unikum!!!! это alexey1, ты как то хотел выслать исходник по моему проблемному вопросу, буду очень благодарен, вот мой рабочий email- stainer@mail.ru



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

Форум: "WinAPI";
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
1-32833
DikobraZ
2002-03-28 18:13
2002.04.11
Помогите справиться с сообщением об ошибке!


6-32920
Victor-S
2002-01-22 22:33
2002.04.11
Снифер под Win2к/XP


1-32726
LazorenkoX
2002-03-30 00:26
2002.04.11
SendMessage or What?


1-32812
abstek
2002-03-30 10:42
2002.04.11
Как узнать тип переменной?


3-32638
Good Man
2002-03-19 12:48
2002.04.11
Простой вопрос по ADOConnection1->Execute





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский