Re[4]: Консольное приложение
От: AHgpeu Украина  
Дата: 09.07.07 08:57
Оценка:
Здравствуйте, OdesitVadim, Вы писали:

OV>Здравствуйте, AHgpeu, Вы писали:


AH>>Привожу область кода:

AH>>

AH>>procedure TMSExportImportGen.AfterConstruction;
AH>>begin
AH>>  inherited;

AH>>  TempDirectory := IncludeTrailingPathDelimiter(CfgPCMS.FCfgExp_Imp.ExpImpPath);//ошибка здесь
AH>>end;
AH>>


AH>>ОШИБКА выглядит так:

AH>>
AH>>Exception EAccessViolation in module MyProject.exe at 00596EA3.
AH>>Access violation at adress 00996EA3 in module 'MyProject.exe'
AH>>Read of adress 0000001C
AH>>

OV>Делфи правильно вас обругала. CfgPCMS я так полагаю объект? А он на данный момент создан? Так как ошибка очень похожа на это.

ПОпробую представить код несколько с другой стороны...Может так легче будет разобраться...

type 
  TMSExportImportGen = class(TObject)
  //..........
  end;

  TMSExpImpTest = class(TMSExportImportGen)
  //..........
  end;

  TTestImport = class(TMSExpImpTest)
  //..........
  end;

var
  tmpTestImp: TTestImport;
begin
  try
    tmpTestImp := TTestImport.Create;
                             //*********************Входим в TTestImport.Create (Debug F7)
                                constructor TMSExpImpTest.Create;
                                begin
                                  inherited;

                                  DBTestList := TObjectList.Create;
                                end;

                                procedure TMSExportImportGen.AfterConstruction;
                                begin
                                inherited;

                                TempDirectory := IncludeTrailingPathDelimiter(CfgPCMS.FCfgExp_Imp.ExpImpPath);//!!!!!!!!!!!!!!ОШИБКА!!!!!!!!!
                                end;  
  finally
    tmpTestImp.Free;
  end;
end.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.