Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Ошибка при инициализации приложения (0xc0000005) [WinXP]


Mr.Devil ©   (2011-11-22 01:27:00) 

Версия Delphi - BDS2006

   STARTUPINFO.cb:=SizeOF(STARTUPINFO);
   STARTUPINFO.lpReserved:=nil;
   STARTUPINFO.lpDesktop:=nil;
   STARTUPINFO.lpTitle:=nil;
   CommandLine:=PChar('"WinRAR.exe" a -m5 -afzip -ibck "'+Price_FileName+'.zip" "'+Price_FileName+'"');
   if CreateProcess(nil,CommandLine,nil,nil,False,0,nil,nil,STARTUPINFO,PROCESS_INFORM ATION) then begin ...

Призапуске приложения из компилятора все выполняется без ошибок, но когда я пытаюсь запустить скомпилированное приложение самостоятельно возникает ошибка:
---------------------------
WinRAR.exe - Ошибка приложения
---------------------------
Ошибка при инициализации приложения (0xc0000005). Для выхода из приложения нажмите кнопку "ОК".
---------------------------
ОК  
---------------------------

Рабочие директории в обоих случаях одинаковые, WinRAR лежит в рабочей директории. Если запусть WinRAR с этими параметрами из командной строки тоже все работает. DEP (Data Execution Protection) в системе отключена.

Помогите найти в чем проблема. Google дает слишком много результатов не относящихся к делу :(


Leonid Troyanovsky   (2011-11-22 05:59:00) [1]


> Mr.Devil ©   (22.11.11 01:27)  

> Помогите найти в чем проблема.

Во-ще-то, все поля TStartupInfo надо инициализировать, т.е.

FillChar(si, SizeOf(si), 0);
si.cbSize := SizeOf(si);

--
Regards, LVT.


Германн   (2011-11-22 04:23:00) [2]


> 2 Германн, понятно, что под отладчиком. Если ничего дельного
> посоветовать не можете, лучше ничего не пишите.

Больше пока дельного писать нечего. Кроме пожелания прочитать всё-таки про функцию CreateProcess. И про значения её параметров!


Mr.Devil   (2011-11-22 03:54:00) [3]

2 Германн, понятно, что под отладчиком. Если ничего дельного посоветовать не можете, лучше ничего не пишите.


Германн   (2011-11-22 03:38:00) [4]

Вот ошибся поставивив букву a Вместо буквы u. :)
А вот так ли я был не прав? :)


Германн   (2011-11-22 03:33:00) [5]


> Mr.Devil ©   (22.11.11 03:20) [6]
>
> 2 Германн, дебаг по F9, так доходчивее?

Не а.
Это запуск "под  отладчиком". Aka debagger.
Желательно понимать эту разницу.


Mr.Devil   (2011-11-22 03:20:00) [6]

2 Германн, дебаг по F9, так доходчивее?


Германн   (2011-11-22 03:18:00) [7]


> Призапуске приложения из компилятора

Вот уж никогда бы не подумал, что "из компилятора" можно "запустить" приложение. Наверно отстал от жизни.


KilkennyCat   (2011-11-22 02:45:00) [8]

я просто предположил юникодовский косяк...


Mr.Devil   (2011-11-22 02:22:00) [9]

Содержимое CommandLine после присвоения соответствует написанному


Mr.Devil   (2011-11-22 02:20:00) [10]

Нет, все красиво, никаких варнингов.


KilkennyCat   (2011-11-22 02:17:00) [11]


> CommandLine:=PChar(

а компилятор на это никаких варнингов не выдает случаем?


Наверх

Титульная страница Поиск, карта сайта Написать письмо