|
1 / 9 / 0
Регистрация: 03.02.2015
Сообщений: 134
|
|||||||||||
ShellExecute не работает08.06.2020, 06:27. Показов 1038. Ответов 7
Метки нет (Все метки)
Что делает кусочек кода: открывается диалоговое окно, выбирается exe файл и запускается. Всё.
Но тут проблема в чём... Через функцию WinExec смог сделать, а с ShellExecute не получается,- строку к нужному типу не знаю как привести. Хотелось бы разобраться.
Вложение 1156223 Ну я так-то понимаю в чём проблема... Просто допустим строку "бла бла бла" можно привести к Юникодному виду - L"бла бла бла". Ну либо так:
0
|
|||||||||||
| 08.06.2020, 06:27 | |
|
Ответы с готовыми решениями:
7
Не работает ShellExecute ShellExecute не работает ShellExecute не всегда работает |
|
|
||||||
| 08.06.2020, 06:58 | ||||||
|
Вот так нормально работает
0
|
||||||
|
1 / 9 / 0
Регистрация: 03.02.2015
Сообщений: 134
|
|
| 08.06.2020, 07:18 [ТС] | |
|
TrollHammer, у меня почему-то нет. даже "open" мне надо писать хотя бы как L"open", чтобы второй параметр прошёл.
0
|
|
|
1 / 9 / 0
Регистрация: 03.02.2015
Сообщений: 134
|
|||||||||||
| 08.06.2020, 19:59 [ТС] | |||||||||||
|
volvo,
Билдер 10.3 Комьюнити, делаю проект с интерфейсом Да я никогда им не пользовался и даже C++ не знаю, только самые базовые какие-то вещи, просто надо в нём 2 лабораторки сделать по системному программированию. В Visual Studio можно просто подключить использование многобайтовой кодировки и всё работает "привычно" для меня. Я теперь понимаю почему мой одногруппник выбрал эту среду, хотя в методичке указан билдер. Я даже знать не знал, что такое "TCHAR, WCHAR, LPSTR, LPWSTR,LPCTSTR". Пытался читать статью про это, но.. какая-то мутная вещь, времени сейчас особо нет. Почему в билдере нельзя просто включить многобайтовую кодировку как в VS? А ошибка следующая: ShellAPI.h(88): candidate function not viable: no known conversion from 'const char *' to 'LPCWSTR' (aka 'const wchar_t *') for 3rd argument В общем у меня в наличии строка AnsiString FN ну либо сконвертированная её версия cons char*cFN= FN.c_str(). Нужно сделать её LPCWSTR типом либо сделать так, чтобы функция ShellExecute научилась принимать другие типы (ну либо компилятор научился там компилировать в многобайтовой кодировке) Добавлено через 6 минут
Добавлено через 7 минут Ну и вообще я так понимаю, системное программирование - это не совсем обычное программирование, тут знать надо дополнительно.
0
|
|||||||||||
|
Супер-модератор
|
|||||||
| 08.06.2020, 20:12 | |||||||
1
|
|||||||
|
1 / 9 / 0
Регистрация: 03.02.2015
Сообщений: 134
|
|
| 08.06.2020, 20:31 [ТС] | |
|
volvo, такой вариант работает, правда функция подчёркивается красным
0
|
|
|
фрилансер
6462 / 5670 / 1131
Регистрация: 11.10.2019
Сообщений: 15,100
|
||
| 08.06.2020, 20:40 | ||
|
Steelandrew, проект может быть настроен как юникодный или как ansi
это определяется объявленным либо отсутствующим в настройках проекта макросом _UNICODE общепринятое в WinAPI обозначение для префикса/постфикса разных идентификаторов: *W* - юникод *A* - ansi *T* - универсальная макроподстановка, раскрывается в A или W в зависимости от наличия _UNICODE (у макро-имём функций обычно постфикс T отсутствует) например, макрос _T:_T("текст") раскроется в "текст" или L"текст"макрос ShellExecute раскроется в ShellExecuteA или ShellExecuteW макрос TCHAR раскроется в char или wchar_t C - const STR - ansi строка WSTR - юникодная строка TSTR - раскроется в предыдущие два в зависимости от _UNICODE
2
|
||
| 08.06.2020, 20:40 | |
|
Помогаю со студенческими работами здесь
8
Почему не работает ShellExecute
Не работает ShellExecute!
ShellExecute не работает Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|