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
[14147] Re:Re:[질문] Form 생성 시 Access Violation 나는 문제..
땅주인 [heaven2] 1897 읽음    2012-02-25 17:57
벽에 머리를 네번 찧어야 될 것 같네요.. ㅠ.ㅠ;;;;;; 왜 그랬지... ..
감솨~~

civilian 님이 쓰신 글 :
: Invoice := TInvoice.Create;
:
: 땅주인 님이 쓰신 글 :
: : 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 나는 문제.. 땅주인 2190 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.