crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

AntonH851
  опции профиля:
сообщение 29.6.2010, 8:54
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 66
Регистрация: 20.2.2010
Из: Шебекино
Пользователь №: 1475

Спасибо сказали: 1 раз(а)




Репутация:   0  


Добрый день.
Вот такая проблема: нужно открыть указанный каталог в проводнике из программы.
Пробовал через QProcess:
    QProcess process;
    QString command;
    command = "explorer " + path;
    process.start(command);

не получилось...
Решил попробовать ShellExecute, но не знаю какой тип строк передавать в качестве параметов:
    HWND h;
    ShellExecute(h, QString("explore").toStdString().c_str(),
                 path.toStdString().c_str(),
                 NULL, NULL, SW_RESTORE);

Ругается:
Цитата
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.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Алексей1153
  опции профиля:
сообщение 29.6.2010, 9:01
Сообщение #2


фрилансер
******

Группа: Участник
Сообщений: 2943
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


Попробуй в качестве запускаемого просто полный путь к каталогу указать

ShellExecute(
    h,
    0,
    tr("c:/111/222/333"),
    0,
    0,
    SW_RESTORE
);


Будет эквивалентно щелчку мышью по каталогу

Сообщение отредактировал Алексей1153 - 29.6.2010, 9:03
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 10.5.2025, 9:04