Как открыть каталог в проводнике(Windows)? |
Здравствуйте, гость ( Вход | Регистрация )
Как открыть каталог в проводнике(Windows)? |
AntonH851 |
29.6.2010, 8:54
Сообщение
#1
|
Студент Группа: Участник Сообщений: 66 Регистрация: 20.2.2010 Из: Шебекино Пользователь №: 1475 Спасибо сказали: 1 раз(а) Репутация: 0 |
Добрый день.
Вот такая проблема: нужно открыть указанный каталог в проводнике из программы. Пробовал через QProcess:
не получилось... Решил попробовать ShellExecute, но не знаю какой тип строк передавать в качестве параметов:
Ругается: Цитата C:/QP/GTD/files.cpp:85: error: cannot convert 'const char*' to 'const WCHAR*' for argument '2' to 'HINSTANCE__* ShellExecuteW(HWND__*, const WCHAR*, const WCHAR*, const WCHAR*, const WCHAR*, INT)' Подскажите что-нибудь пожалуйста, или по QProcess(что предпочтительней) или по ShellExecute. |
|
|
molchanoviv |
29.6.2010, 9:01
Сообщение
#2
|
Старейший участник Группа: Сомодератор Сообщений: 597 Регистрация: 18.7.2008 Из: Саратов Пользователь №: 238 Спасибо сказали: 41 раз(а) Репутация: 5 |
|
|
|
Алексей1153 |
29.6.2010, 9:01
Сообщение
#3
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
Попробуй в качестве запускаемого просто полный путь к каталогу указать
Будет эквивалентно щелчку мышью по каталогу Сообщение отредактировал Алексей1153 - 29.6.2010, 9:03 |
|
|
molchanoviv |
29.6.2010, 9:06
Сообщение
#4
|
Старейший участник Группа: Сомодератор Сообщений: 597 Регистрация: 18.7.2008 Из: Саратов Пользователь №: 238 Спасибо сказали: 41 раз(а) Репутация: 5 |
Кстати тебе стоит проверять process.waitForStarted() и process.waitForFinished()
|
|
|
AntonH851 |
29.6.2010, 9:07
Сообщение
#5
|
Студент Группа: Участник Сообщений: 66 Регистрация: 20.2.2010 Из: Шебекино Пользователь №: 1475 Спасибо сказали: 1 раз(а) Репутация: 0 |
не получилось... Поподробнее. Что выдает на консоль. Запускается ли процесс? На консоль ничего не выдает, проводник запускается, но выдает ошибку: Цитата Путь "С:/QP/GTD/debug/10101110_010610_0002052" не существует или не является каталогом Хотя каталог такой существует... |
|
|
molchanoviv |
29.6.2010, 9:21
Сообщение
#6
|
Старейший участник Группа: Сомодератор Сообщений: 597 Регистрация: 18.7.2008 Из: Саратов Пользователь №: 238 Спасибо сказали: 41 раз(а) Репутация: 5 |
Слеши. В explorer-е слеши в другую сторону. Т.е. путь должен выглядеть как С:\QP\GTD\debug\10101110_010610_0002052
|
|
|
Алексей1153 |
29.6.2010, 9:30
Сообщение
#7
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
QDir::absolutePath ()
и QDir::toNativeSeparators() Сообщение отредактировал Алексей1153 - 29.6.2010, 9:31 |
|
|
AntonH851 |
29.6.2010, 9:35
Сообщение
#8
|
Студент Группа: Участник Сообщений: 66 Регистрация: 20.2.2010 Из: Шебекино Пользователь №: 1475 Спасибо сказали: 1 раз(а) Репутация: 0 |
Слеши. В explorer-е слеши в другую сторону. Т.е. путь должен выглядеть как С:\QP\GTD\debug\10101110_010610_0002052 Точно, проблема решена, спасибо! QDir::absolutePath () и QDir::toNativeSeparators() Поздно я увидел ваше сообщение.... успел написать свою функцию замены разделителей) |
|
|
Алексей1153 |
29.6.2010, 10:28
Сообщение
#9
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
|
|
|
Текстовая версия | Сейчас: 25.11.2024, 17:59 |