|
비주얼 씨에서 작성한것을 빌더에서 그냥 돌리면 에러가 납니다.
저두 자세히는 모르겠는데 vc에선 독자적인 방식으로 제공한다고 들었는데여
빌더에서 쓰실려면 표준 방식로 바꾸어주셔야 한다는것 같은데..
저두 남이 한거 받기만해서 잘은 모르겠어여 ㅜ.ㅜ
심심산천 님이 쓰신 글 :
: 질문할때 마다 느끼는 거지만 문제가 정확히 뭔지 모를땐 설명하기도 어려운거 같애요..
:
: 우선 저는 지금 com으로 만든 dll을 포함시켜서 프로그램을 짜는데요..
: vc로 잘돼는 프로그램을 cbuilder5에서도 똑같이 작동하게 하는겁니다.
: 근데
: static GUID m_service_guid = { 0x5fc2a42e, 0x144e, 0x4bb5 , {0xb4, 0x3f, 0x4e, 0x61, 0x71, 0x1d, 0x1c, 0x32} };
: 라고 선언하고 값을 찍어보면
: m_service_guid.Data1 = 1606591534,
: m_service_guid.Data2 = 5198,
: m_service_guid.Data3 = 19381,
: m_service_guid.Data4 = ?Naq2Widcomm SDK RFComm Service
: 이렇게 나오거든요..
:
: 여기서 아스키값을 대조해 보니깐 '?Nap 2' 는 {0xb4, 0x3f, 0x4e, 0x61, 0x71, 0x1d, 0x1c, 0x32}
: 이랑 같습니다.
:
: 문제는 vc에서 m_service_guid를 찍어보면 위와 똑같은데 정상적으로 돌아갑니다.
: 하지만 cbuilder에서는 m_service_guid값을 TSdpService에 할당하고 또 다른 값을 할당하면
: m_service_guid를 할당하는 함수가 성공적으로 호출되지 않았는데 다른값을 할당하려고 해서 에러가 났다는 코드를 리턴하거든요.
:
: 'TSdpService'가 com server라 내부에서 어떻게 구현되는지 잘모르겠지만
: 값을 순서대로 할당하지 않으면 뒤의 값을 저장할 수 없게되어있어요.
:
: 의논할 사람도 없고 답답합니다.
:
:
|