Форум » [x]Harbour » Как можно открыть папку с выбранным файлом ? » Ответить

Как можно открыть папку с выбранным файлом ?

Andrey: Как на хХарборе сделать следующее: 1) открыть Explorer с нужной папкой (я это могу сделать - ShellExecute( 0, "open", "explorer.exe", cPathOut, , SW_SHOWNORMAL ) ) 2) маркер-выбора установить на нужный файл ? Чтоб получилось как на картинке: А дальше пользователь уже сам делает с этим файлом что захочет....

Ответов - 2

Andrey: С этим разобрался.... Пример тут // компилировать без библиотеки what32.lib /* * ShowWindow() Commands - смотри #include "winuser.h" */ #define SW_HIDE 0 #define SW_SHOWNORMAL 1 #define SW_NORMAL 1 #define SW_SHOWMINIMIZED 2 #define SW_SHOWMAXIMIZED 3 #define SW_MAXIMIZE 3 #define SW_SHOWNOACTIVATE 4 #define SW_SHOW 5 #define SW_MINIMIZE 6 #define SW_SHOWMINNOACTIVE 7 #define SW_SHOWNA 8 #define SW_RESTORE 9 #define SW_SHOWDEFAULT 10 #define SW_FORCEMINIMIZE 11 #define SW_MAX 11 FUNCTION MAIN() LOCAL cRun := "explorer.exe" , cParam := "/e, /select, Z:\MiniGui\readme.txt" ? " Запуск: ",cRun ? " Параметры: ",cParam ShellExecute(GetDeskTopWindow(), 'open',cRun, cParam, "" , SW_SHOWNORMAL) wait RETURN NIL /////////////////////////////////////////////////////// #pragma BEGINDUMP #include <windows.h> #include <hbapi.h> #include <shlobj.h> HB_FUNC( GETDESKTOPWINDOW ) { hb_retnl( (LONG)GetDesktopWindow() ); } HB_FUNC( SHELLEXECUTE ) { hb_retnl( (LONG) ShellExecute( (HWND) hb_parnl( 1 ) , (LPCSTR) hb_parcx( 2 ) , (LPCSTR) hb_parcx( 3 ) , ISNIL(4) ? NULL : (LPCSTR) hb_parcx( 4 ) , (LPCSTR) hb_parcx( 5 ) , hb_parni( 6 ) ) ) ; } #pragma ENDDUMP

Sergy: А как получить результат - какой именно файл выбрал юзер ? Сорри за чайниковские вопросы.



полная версия страницы