시스템을 작성할 때 문제가 발생했습니다. DLL의 매개변수가 문자열 유형이기 때문에 C#에서 Delphi6으로 작성된 DLL을 호출할 수 없습니다. 그런 다음 온라인에서 관련 정보를 검색했지만 여전히 결과를 찾지 못했습니다. 고민 끝에 이제 해결했습니다. 여러분과 기쁨을 나누고자 이 글을 쓰게 되었습니다!
델파이 dll 파일:
///////////////////////////////////////////////// /// ///////////////////
라이브러리 mydll;
용도
시스틸,
수업;
{$r *.res}
함수 out_char(str1:pchar;str2:pchar):pchar;stdcall;
var
임시:pchar;
시작하다
getmem(임시,길이(str1)+길이(str2)+1);
strcopy(임시,str1);
strcat(임시,str2);
결과 := 온도;
끝;
수출
out_char;
시작하다
끝.
///////////////////////////////////////////////// /// /////////////
C#의 호출 방법:
[dllimport(mydll.dll)] public static extern string out_char(string str1,string str2);
그런 다음 문자열 유형 데이터를 전달하기 위해 dll이 구현됩니다.
하하~~~~~