Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[14145] [질문] Form 생성 시 Access Violation 나는 문제..
땅주인 [heaven2] 2189 읽음    2012-02-25 17:23
Delphi 2009입니다.
Form의 FormShow 이벤트에서 TInvoice라는 객체를 생성하고 초기화 하려는데..
TInvoice 객체 생성하려고만 하면 Access Violation이 나는데요..
참고로 XML WebService를 붙이기 위해 THTTPRIO, TXMLDocument 를 쓰고 있습니다.
이 두 객체를 TInvoice 객체에 포인터로 넘겨주어 실제 로직은 TInvoice에 모두 몰아 넣으려고 합니다.

Form 객체의 Show Event에서 TInvoice의 Create를 하는데 바로 에러가 나네요..

Access violation at address 00404388 in module InvoiceProject.exe. Read of address 00000000

메세지로 봐서는 Invoice라는 객체가 생성되지 않은 것으로 보입니다.
어떻게 해결해야 할 지?

/////////////////////////////////////////////////////////////////////////////////
// UnitInvoice.pas 파일의 내용

unit UnitInvoice;
interface
uses
  .....
  GFService, Invoice, UnitPrintInvoice;

type
  TFormMain = class(TForm)
    ....
    HTTPRIO1: THTTPRIO;
    XMLDocument1: TXMLDocument;

    procedure FormShow(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    ....
  private
    Invoice      : TInvoice;     // 송장 처리용 Classs
    InvoicePrint : TFormPrint;   // 송장출력용 화면(POST로 요청)
  public
    { Public declarations }
  end;

var
  FormMain: TFormMain;

implementation

{$R *.dfm}

procedure TFormMain.FormShow(Sender: TObject);
begin
    Invoice.Create();   // Access violation 발생.
    //Invoice.Init(HTTPRIO1, XMLDocument1);

    // Config.ini 파일을 내용을 보여준다.
    //edMkimid.Text := Invoice.GetMkImid();
    //edCustomerCode.Text := Invoice.GetCustomerCode();
    //edOrderNo.Text := IntToStr(Invoice.GetOrderID());
end;



/////////////////////////////////////////////////////////////////////////////////
// Invoice.pas 파일의 내용

unit Invoice;

interface

uses GFService, SHDocVw, SOAPHTTPClient, XMLDoc, msxmldom, XMLIntf, Dialogs, SysUtils, Windows,
     Messages, Classes, Controls, Forms, StdCtrls, ComCtrls;

type
     // 부속 Structure 정의
     // STMallInfo = record 
     //  ....
     //  end;

////////////////////////////////////////////////////////////////////////////////
// Invoice Class
////////////////////////////////////////////////////////////////////////////////

    TInvoice = class
    private
        bInit         : boolean;    // Init Flag
        MkImid        : string;     // '21388'
        CustomerCode  : string;     // '00001'~'99999'
        OrderID       : integer;    // 000001~999999
        HTTPRIO       : THTTPRIO;
        XMLDocument   : TXMLDocument;
    protected

    public
        function Init(var HTTPRIO : THTTPRIO; var XMLDocument : TXMLDocument) : boolean;
        .....
    end;

implementation

+ -

관련 글 리스트
14145 [질문] Form 생성 시 Access Violation 나는 문제.. 땅주인 2189 2012/02/25
14146     Re:[질문] Form 생성 시 Access Violation 나는 문제.. civilian 2076 2012/02/25
14147         Re:Re:[질문] Form 생성 시 Access Violation 나는 문제.. 땅주인 1897 2012/02/25
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.