구조체에 데이터를 세팅한후 DLL함수로 넘기면 값이 엉망이 되어 버립니다. +_+
글쓴이: 이소희 / 작성시간: 목, 2006/02/02 - 2:25오후
구조체에 값을 세팅해서 DLL함수로 보내주면 그 값들을 처리하는 함수를 만들었습니다.
값이 분명이 세팅되어 있는데, DLL쪽으로 가서 디버깅을 해보면, 잘 세팅 되어 있던 값들이 사라지거나, 다른 구조체 변수에 들어가 있습니다.
예를들면,, 구조체를 typedef struct data { char data[16]; char data2[256]; char data3[32]; }DATA; 이런 식으로 만들고,, DATA d; strcpy(d.data,"abc"); strcpy(d.data2,"이소희"); strcpy(d.data3,"하하하하"); 이런식으로 했다고 했을때.
DLL로 넘겨주면.
d.data 에는 제대로 들어가 있지만,
d.data2 에는 " 이소희"
이런식으로 공백(NULL)이들어가서 보입니다.
DLL은 C/C++로 만들었습니다. C++ 클래스를 사용하였고 기타 별다른 사항은 없습니다.
Forums:
데이터를 넘겨주는 함수와 데이터를 받는 함수를 각각 올려주세요..
데이터를 넘겨주는 함수와 데이터를 받는 함수를 각각 올려주세요..
-------------------------------------------------------------------------------
It's better to appear stupid and ask question than to be silent and remain stupid.
구조체가 초기화 되지 않는 것이 마음에 걸리는군요.
구조체가 초기화 되지 않는 것이 마음에 걸리는군요.
-----------------
한글을 사랑합니다.
버퍼오버플로우 ㅡㅡ;
해결했어요.
저의 부주의로인한...
버퍼오버플로우였네요.
:oops:
내 삶속에 던져진 나.
댓글 달기