QProcess не работает из-за strcat |
Здравствуйте, гость ( Вход | Регистрация )
QProcess не работает из-за strcat |
mva |
1.10.2013, 15:37
Сообщение
#1
|
Участник Группа: Участник Сообщений: 104 Регистрация: 15.3.2009 Из: Киров Пользователь №: 615 Спасибо сказали: 3 раз(а) Репутация: 0 |
Доброго времени суток!
Подключаю драйвер фискального регистратора к своему приложению просто включая его исходники в свои. Обнаружил, что у меня перестает работать запуск через QProcess стороннего приложения (браузера FireFox), никак не связанного с драйвером, из-за одной строки в коде драйвера. Раскрывающийся текст int readoptions (void) { char *homedir; int etc_res; int home_res; fr = drvfrInitialize(); homedir = getenv("HOME"); etc_res = readrcfile("/etc/drvfrrc"); home_res = readrcfile(strcat(homedir, "/.drvfrrc")); // Из-за присутствия strcat в этом месте, мое стороннее приложение не запускается if(etc_res == -1 && home_res == -1) return -1; fr->prop->ComPortNumber = t_devnum; fr->prop->Password = t_passwd; fr->prop->Timeout = t_timeout; fr->prop->BaudRate = t_linespeed; return 1; } Если я проблемную строку поменяю на такую: home_res = readrcfile(QString().append(homedir).append("/.drvfrrc").toAscii().data()); то стороннее приложение запускается нормально. С чем может быть связан такой эффект? |
|
|
Текстовая версия | Сейчас: 23.11.2024, 6:32 |