Как вызвать диалог "свойства", У файла или папки
к файлу.
Это тот диалог, который показывается, если на файле или папке нажать правой клавишей мыши и
выбрать "Свойства"
Только не отправляйте к MSDN! Я там накопал что-то про IShellFolder но так до конца и не понял,
как это делается...
Кто может объяснить? Ау, Спецы с большой буквы откликнитесь!
ShellExecute(hwnd,"properties",path,param,dir,SW_SHOWNORMAL)
ну последний параметр роли не играет. hwnd - хэндл окна - тоже можно забить. path - путь к файлу-папке,param и dir можно оставлять пустыми (для данной задачи).
НО! при выполнении возвращается код 31 - не опеределено действие для данного типа файлов. У меня возникает уже стойкое подозрение, что где-то, что-то напутано с орфографией слова properties, или же я не замечаю чего-то очевидного...
Кто знает ответ - поделитесь...
Кто знает ответ - поделитесь...
Я тоже не знаю точно, но поделюсь:
У меня почему-то открываерся почтовик при вызове этой функции %)... что-то очень уж она разносторонняя.
Но я нашел еще одну, может поможет...
ShellExecuteEx
У меня почему-то открываерся почтовик при вызове этой функции %)... что-то очень уж она разносторонняя.
Но я нашел еще одну, может поможет...
ShellExecuteEx
не поможет. вчера посидел с softIce'ом:
ShellExecute всего лишь заполняет структуру, для вызова ShellExecuteEx, а потом вызывает ее. Что интересно, как таковых этих функций в файле shell32.dll нету. есть только две экспортируемые функции RealShellExecute и RealShellExecuteEx (ну на самом деле четыре - две для ANSI-кода, две для Unicode)... вот так... а почтовик может открываться, если второй параметр стоит start или open и вызывается для определенного типа файлов, с которым сопоставлен почтовик, а может и по другой причине... вобщем неисповедимы пути Win.
Между прочим тот же SoftIce не отследил вызовов ни одной из всех shellExecute'ов при нажатии Alt+Enter. Интересно к чему бы это...
Между прочим тот же SoftIce не отследил вызовов ни одной из всех shellExecute'ов при нажатии Alt+Enter. Интересно к чему бы это...
Хм... наводит на размышления... %)
Вообще-то должна быть такая функция... хотя кто знает, может есть такй exe-шник, к которому пихаешь параметром файл или папку, и он выводит свойства... вообще есть в винде такой универсальный файлик, не помню как зовут, но ОЧЕНЬ знакомо %)
Забавно. В файле shell.dll (НЕ shell32) найдена функция ShellExecute. Но вроде бы все старые функции работют только заглушками. Или нет...Плохо, что Ice врял ли найдет функцию по имени в нем, а искать по адресу - влом...
Я глянул - есть шанс, ято это explorer.exe с 2-мя параметрами, один из которых полное имя файла, а второй надо смотреть по доке... может поможет?...