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

Вниз

Окно свойств объекта файловой системы   Найти похожие ветки 

 
DelphiN! ©   (2004-09-11 08:05) [0]

Как вызвать окно свойств(которое вызывается кликаньем на подменю Свойства контексного меню объекта), если известен путь к объекту


 
GuAV ©   (2004-09-11 10:25) [1]

function SHObjectProperties(hwndOwner: HWND;
 uFlags: Integer; lpstrName,
 lpstrParameters: PChar): LongBool; stdcall;
   external shell32 index 178;

procedure Properties(const FileName: string);
begin
 SHObjectProperties(Application.Handle, 2,
   PChar(FileName), nil);
end;


 
DelphiN! ©   (2004-09-13 07:56) [2]

Почему-то не работает ф-ия, нашел ее описание в MSDN:

BOOL SHObjectProperties(      

   HWND hwnd,
   DWORD dwType,
   LPCWSTR szObject,
   LPCWSTR szPage
);

Parameters
hwnd
[in] The HWND of the window that will be the parent of the dialog box.
dwType
[in] A flag value that specifies the type of object, and whether the dialog box is modal.
SHOP_PRINTERNAME
szObject contains the friendly name of a printer.
SHOP_FILEPATH
szObject contains a fully qualified file name.
SHOP_VOLUMEGUID
szObject contains a volume globally unique identifier (GUID).
szObject
[in] A NULL-terminated Unicode string that contains the object name. The contents of the string are determined by which of the first three flags are set in dwType.
szPage
[in] A NULL-terminated Unicode string that contains the name of the property sheet page to be initially opened. Set this parameter to NULL to specify the default page.

Где узнать значение параметра SHOP_FILEPATH?

Вызов ф-ии с параметром(dwType) = 2 не дает никаких результатов(ф-ия возвращает false), с параметром = 4, вызывается пустое окно свойств. С каким параметром вызвать ф-ию, чтобы она работала, для файлов, путь к которым указан в szObject?

Так-же минимальной потдерживаемой ОС для ф-ии является Win2000, как осуществить тоже самое и для 9х?


 
DelphiN! ©   (2004-09-17 07:49) [3]

Ну же народ..


 
begin...end ©   (2004-09-17 12:49) [4]

Насколько я помню, для показа диалога свойств можно также использовать ShellExecuteEx (в структуре TShellExecuteInfo параметр lpVerb должен быть равен "properties").

Например, вот так можно вывести диалог свойств для файла:

uses ShellAPI;

procedure ShowFileProperties(const FileName: String);
var
 Info: TShellExecuteInfo;
begin
 ZeroMemory(@Info, SizeOf(Info));
 with Info do
 begin
   cbSize := SizeOf(Info);
   lpFile := PChar(FileName);
   lpVerb := "properties";
   fMask  := SEE_MASK_INVOKEIDLIST;
 end;
 ShellExecuteEx(@Info);
end;


Конечно, желательно добавить там проверку значения, возвращаемого ShellExecuteEx.


 
DelphiN! ©   (2004-09-17 20:29) [5]

Big Thx!



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

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

Наверх




Память: 0.45 MB
Время: 0.032 c
1-1096909779
Werwolf
2004-10-04 21:09
2004.10.17
вопрос по sin и cos


1-1096678751
Аноним
2004-10-02 04:59
2004.10.17
Скопировать текст в Clipboard


3-1095819073
Medik
2004-09-22 06:11
2004.10.17
Удаление в Stringgrid


1-1095921332
-=RuSSt=-
2004-09-23 10:35
2004.10.17
перейти на строку в Memo


1-1096951262
TeNY
2004-10-05 08:41
2004.10.17
Как зная Hwnd получить сведения о типе окна,его имя,имя родителя





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский