|
컴포넌트를 배치하면 Access Violation이 발생하는 문제에 대해서는 제가 아는 것이 없어서 달리 말씀드릴 게 없군요.
다만, 제가 제시한 코드는 문제 없이 실행되었다는 것만 말씀드립니다.
첨부 파일은 제가 시험해본 것입니다.
김준원 님이 쓰신 글 :
: Indy의 Base64Encoding/Decoding 작업을 할때...
: Access Violation을 발생한뒤 죽어버립니다.
: 원체 어디서 이상이 있는건지
: 그냥 IdBase64 Encoder 혹은 Decoder를 넣기만 해도 Access Violation 을 유발시키는군요.
: 혹시 뭔가 Include 시켜야 하는 것이 있는건지요?
:
: 추신:밑의 코드를 응용해서 해보았지만 역시 Access Violation 입니다...
: 예제 만들어보실때 이상없이 잘 돌았는지요? 일단 화면이 뜨지도 않기에...
: 정상적으로 뜨는 코드일경우 파일을 좀 공유해주실수 있으신지요?
: Indy의 Base64를 사용해보려고 하니 이런 저런 문제사항들이 많네요 ;ㅅ;
:
: 추신2 : 혹시 Borland C++ 기본적으로 깔려져 있는 Indy버젼의 것이여서 문제가 된 걸지도 라는 생각이 드는데요... Indy 버젼을 어떤걸 쓴 건지도 궁금합니다.
:
:
: 임문환.실업자 님이 쓰신 글 :
: : indy 님이 쓰신 글 :
: : : base64의 인코딩과 디코딩 작업을 해보려고 하던 도중에
: : : Indy 의 base64E/D 를 발견하였습니다.
: : : 특별히 설치한게 아니라 C++ Builder 6에 있는 건데말입니다.
: : : 이거 사용법이 어찌 되는지 이해가 안가고 있습니다.
: : : Indy Misc의 IdBase64Encoder/Decoder 사용법이 궁금합니다.
: : : 추신:예제 같은것 올려주시면 이해가 더 편합니다. (실제로 실행이 가능한)많은 도움 부탁드립니다.
: :
: : 도움말을 보았는데 제대로 도움이 안 되네요.
: : 여튼 아래와 같이 하니 되더군요.
: : 혹, 잘못된 부분이 있을지 장담할 수 없습니다.
: :
: : IdBase64Encoder1->SetBufferSize(memoSource->Text.Length()+1);
: : IdBase64Encoder1->CodeString(memoSource->Text);
: : String ret = IdBase64Encoder1->CompletedInput();
: : int n = StrToInt(Fetch(ret, ';'));
: : memoEncoded->Text = ret;
: : memoEncoded->Lines->Add(n);
: : memoEncoded->Lines->Add(ret.Length());
: :
: : IdBase64Decoder1->SetBufferSize(ret.Length()+1);
: : IdBase64Decoder1->CodeString(ret);
: : String ret2 = IdBase64Decoder1->CompletedInput();
: : n = StrToInt(Fetch(ret2, ';'));
: : memoDecoded->Text = ret2;
: : memoDecoded->Lines->Add(n);
: : memoDecoded->Lines->Add(ret2.Length());
: : memoDecoded->Lines->Add(memoSource->Text.Length());
|