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
[15408] C#을 델파이로 전환시 Array of Object에서 에러가 생깁니다. 도와주세요.
허 강 [khuhhuh] 2170 읽음    2015-02-03 15:50
// C# 소스 코드
        private static TrackRequest CreateTrackRequest()
        {
            TrackRequest request = new TrackRequest();
            request.WebAuthenticationDetail = new WebAuthenticationDetail();
            request.WebAuthenticationDetail.UserCredential = new WebAuthenticationCredential();
            request.WebAuthenticationDetail.UserCredential.Key = "CiX2k8x1RtuMwcds";
            request.ClientDetail = new ClientDetail();
            request.ClientDetail.AccountNumber = "510387348";
            request.ClientDetail.MeterNumber = "107531677";
            request.TransactionDetail = new TransactionDetail();
            request.TransactionDetail.CustomerTransactionId = "Track Request..."; 
            request.Version = new VersionId();

            request.SelectionDetails = new TrackSelectionDetail[1] { new TrackSelectionDetail() };
            request.SelectionDetails[0].PackageIdentifier = new TrackPackageIdentifier();
            request.SelectionDetai
ls[0].PackageIdentifier.Value = "XXX"; 

            request.SelectionDetails[0].PackageIdentifier.Type = TrackIdentifierType.TRACKING_NUMBER_OR_DOORTAG;

            return request;
        }

// 전환된 델파이 코드
procedure TForm1.btnTrackClick(Sender: TObject);
var
  rTrackRequest: TrackRequest;               
  rTrackReply: TrackReply;
  rTrackDetail: TrackSelectionDetail;

begin
  rTrackRequest := TrackRequest.Create;
  rTrackReply := TrackReply.Create;
  rTrackRequest.WebAuthenticationDetail := WebAuthenticationDetail.Create;
  rTrackRequest.WebAuthenticationDetail.UserCredential := webAuthenticationCredential.Create;
  rTrackRequest.WebAuthenticationDetail.UserCredential.Key := 'CiX2k8x1RtuMwcds';

  rtrackRequest.ClientDetail := ClientDetail.Create;
  rTrackRequest.ClientDetail.AccountNumber := '510387348';
  rTrackRequest.ClientDetail.MeterNumber := '107531677';
  rTrackRequest.TransactionDetail := TransactionDetail.Create;
  rTrackRequest.TransactionDetail.CustomerTransactionId := 'Track Request...';

  rTrackRequest.Version := VersionID.Create;

  rTrackRequest.SelectionDetails[0] := TrackSelectionDetail.Create;    // Access violation 에러가 나옴
  rTrackRequest.SelectionDetails[0].PackageIdentifier := TrackPackageIdentifier.Create;
  rTrackRequest.SelectionDetails[0].PackageIdentifier.Value := fldTrackNo.Text;
  rTrackRequest.SelectionDetails[0].PackageIdentifier.Type_ := TrackIdentifierType.TRACKING_NUMBER_OR_DOORTAG;
  rTrackReply := (FedEx as TrackPortType).track(rTrackRequest);
end;


+ -

관련 글 리스트
15408 C#을 델파이로 전환시 Array of Object에서 에러가 생깁니다. 도와주세요. 허 강 2170 2015/02/03
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.