Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.12.2012, 17:55   #1
AlekseyK
 
Регистрация: 03.12.2012
Сообщений: 3
По умолчанию Внешнее приложение

Всем доброго времени суток

Есть внешнее приложение, которое берет версию Винды и в зависимости от версии ставит некие драйвера. При этом ведется лог установки. Из под командной строки все запускается корректно

Работаю в Win XP.
С помощью CreateProcess запускаю это внешнее приложение и оно у себя в логах пишет, что моя версия Винды не XP и даже не 2000.

Текс запуска CreateProcess взял как советует GunSmoker

Код:
Application:=ProgramDirectory+'Driver\DriverSetup.exe';
Params:='/install';
CmdLine := Format('"%s" %s',[Application, Params]);

ZeroMemory(@StartInfo, SizeOf(StartInfo));
StartInfo.cb:=Sizeof(StartInfo);
StartInfo.dwFlags:=StartF_UsesHowWindow;
StartInfo.wShowWindow:=Sw_Hide;


CreateProcess(Pointer(Application), PChar( String(CmdLine) ), nil, nil, false,
                          0, nil, PChar(ProgramDirectory),StartInfo,ProcInfo);

Вобщем вопрос в том, в чем разница в двух запусках и почему теряется информация об операционной системе.


P.S. Тут два пробела каких-то в предпросмотре нарисовались.... Driver слитно, ProcInfo конечно тоже.

Последний раз редактировалось AlekseyK; 03.12.2012 в 18:21.
AlekseyK вне форума Ответить с цитированием
Старый 05.12.2012, 16:19   #2
AlekseyK
 
Регистрация: 03.12.2012
Сообщений: 3
По умолчанию

Всем спасибо за помощь.

Проблема была в слишком длинных путях, откуда запускался проект. При копировании проекта в папку ближе к корню диска всё стало исправно работать.
AlekseyK вне форума Ответить с цитированием
Старый 05.12.2012, 18:09   #3
xoodoo
Форумчанин
 
Регистрация: 11.04.2012
Сообщений: 212
По умолчанию

Поди кириллица была в пути или прав на доступ к какой-то папке в пути недостаточно, длина пути тут вообще ни причем
xoodoo вне форума Ответить с цитированием
Старый 05.12.2012, 18:42   #4
AlekseyK
 
Регистрация: 03.12.2012
Сообщений: 3
По умолчанию

Путь был стандартный.
C:\Program Files\Borland\Delphi7\Projects\Prob e v0.1

Заменил на
C:\Program Files\Borland\Delphi7\Projects\Pr1

Возможно пробел? Хотя пробовал жестко пробивать путь в двойных кавычках.

Причем, хочу заметить, что внешнее приложение запускалось, но оно не могло схватить версию ОС.
AlekseyK вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Внешнее устройство + Delphi Pedro Общие вопросы Delphi 1 24.07.2009 14:36
Запустить внешнее приложение Copperfild Общие вопросы Delphi 7 01.10.2008 12:13
Независимое внешнее тестирование выпускников Украины Viteef Свободное общение 15 02.06.2008 14:25
Организовать на экране внешнее меню Klyan Паскаль, Turbo Pascal, PascalABC.NET 10 03.01.2007 18:37