Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.12.12;
Скачать: CL | DM;

Вниз

Консольное приложение вылетает на end.   Найти похожие ветки 

 
Навичек   (2003-12-01 12:11) [0]

Создал консольное приложение - перерывает текстовые файлики и с помощью ADOQuery записывает их на SQLServer. Все нормально только вот на последней строке программы
"END." вылетает с ошибкой "Access violations...." даже не знаю как с этим бороться и не обработаешь эту ошибочку никак. Компилятор нифига не ругается. Че делать не знаю. Народ подскажите хоть в какую сторону копать


 
me   (2003-12-01 12:15) [1]

Код показывать прежде всего.


 
clickmaker ©   (2003-12-01 12:16) [2]

Хм... Если б компилятор ругался на каждый потенциальный AV, половину программеров уволили бы за ненадобностью :)

А по существу - код нужен. Так не скажешь ничего.


 
навичек   (2003-12-01 12:23) [3]

текст привожу он немного большой.. и без всех дополнительных функций а то там 400 строк. использовал DataModule c одним компонентом TADOQuery в нем никакого своего кода.

begin
Application.Initialize;
Application.CreateForm(TDM, DM);
TicketErr:=False;
ErrWas:=False;
AppIni := TIniFile.Create(".\SirenaToSQL.ini");
sSourcePath:=DoNeedPath(AppIni.ReadString("Path", "SourcePath", "c:\temp"));
sLogPath:=DoNeedPath(AppIni.ReadString("Path", "LogPath", "c:\temp"));
DoneTicNum:=0;
slTicketData:=TStringList.Create;
slTransferData:=TStringList.Create;
DoneTrnNum:=0; AllTrnNum:=0;


 
clickmaker ©   (2003-12-01 12:28) [4]

Если прога консольная, то вот это лишнее

Application.Initialize;
Application.CreateForm(TDM, DM);

А RDM можно и просто создать

RDM := TDM.Create(nil);
try
// твой код
finally
RDM.Free;
end;


 
REA ©   (2003-12-01 12:28) [5]

Проверено, мин нет. (и так 20 постов).


 
навичек   (2003-12-01 12:32) [6]

а тут оганичение оказывается стоит на размер поста .. раньше вроде не было там всего то около ста строк ....
сейчас попробую сделать без
Application


 
навичек   (2003-12-01 12:49) [7]

2clickmaker
EOleSysError ругается "Не был произведен вызов СoInitialize" .... а таком первый раз слышу

делаю следующее

var
RDM:TDM;
begin
RDM := TDM.Create(nil);


 
clickmaker ©   (2003-12-01 12:52) [8]


> навичек (01.12.03 12:49) [7]

Ну так произведи. Это для ADO требуется. В finally не забудь CoUninitialize


 
навичек   (2003-12-01 12:54) [9]

все фигня ...... всем спа за помощь
надо было добавить в самый конец

DM.DestroyComponents;
end.
где DM:TDM = class(TDataModule) и все нормально... не вылетает.



Страницы: 1 вся ветка

Текущий архив: 2003.12.12;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.015 c
1-36671
Паша_Кимры
2003-11-30 13:37
2003.12.12
Технология СОМ


1-36615
bobtubob
2003-12-01 09:20
2003.12.12
Как передать переменные из программы в программу


1-36724
gagarin
2003-12-02 12:35
2003.12.12
Как определить путь к TEMP?


6-36796
SH
2003-10-14 20:03
2003.12.12
Сокеты


3-36519
Nick-From
2003-11-19 19:55
2003.12.12
Обработка исключения - Нет прав на выполнение действия