![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| rudolfninja |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 341 Регистрация: 19.2.2013 Где: г. Минск Репутация: 1 Всего: 6 |
Привет всем.
Ребят, помогите решить такую проблему. Мне надо из приложения запустить функцию system(), аргументами которой будет путь к файлу, содержащему русские символы. С версией system() это не работает. Если передаю аргументы только с англ. строкой, то все ок. Если в имени файла встречается русский символ, то system его не может нормально обработать. Не подскажете, как можно решить эту проблему? Вообще, задача такова: рядом с моим исполняемым файлом есть исполняемый файл, например, test.exe. Мне надо с моего приложения вызвать test.exe c аргументом, указывающим на файл. Как это можно еще сделать если не через system()? Спасибо. |
|||
|
||||
| Cheloveck |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1578 Регистрация: 26.7.2008 Где: Тула Репутация: 3 Всего: 32 |
Использование system -- не лучшая практика.
Windows: https://msdn.microsoft.com/en-us/library/wi...v=vs.85%29.aspx UNIX: http://pubs.opengroup.org/onlinepubs/7908799/xsh/fork.html + http://pubs.opengroup.org/onlinepubs/00969...tions/exec.html Если исользуешь какие-нибудь тулкиты, типа boost, Qt или GTK+, то там есть свои кроссплатформенные функции. -------------------- ![]() |
|||
|
||||
| rudolfninja |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 341 Регистрация: 19.2.2013 Где: г. Минск Репутация: 1 Всего: 6 |
||||
|
||||
| Cheloveck |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1578 Регистрация: 26.7.2008 Где: Тула Репутация: 3 Всего: 32 |
-------------------- ![]() |
|||
|
||||
| rudolfninja |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 341 Регистрация: 19.2.2013 Где: г. Минск Репутация: 1 Всего: 6 |
Что-то не срабатывает QProcess
Через system делаю так:
Через QProcess:
Процесс запускается, вот аргументы, вроде как, не передаются в него, т.к. нужного файла не появляется. |
||||
|
|||||
| feodorv |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2214 Регистрация: 30.7.2011 Репутация: 11 Всего: 45 |
Создайте программу, которая просто печатает передаваемые ей аргументы, байт в байт. Подсуньте её вместо своей программы. Посмотрите на вывод. Скорее всего, дело в кодировках.
Добавлено через 55 секунд Или в пробелах в именах файлов/директорий... -------------------- Напильник, велосипед, грабли и костыли - основные инструменты программиста... |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |