728x90
C# .Net에서 Native DLL(Unmanaged DLL)에 있는 함수를 호출하는 것을 Platform Invoke 혹은 줄여서 P/Invoke라 부른다.
예를 들어, C#에서 Windows 운영체제의 Win32 API를 호출한다거나, 기존 C/C++로 작성된 Native DLL의 함수를 호출할 필요가 있을 때, P/Invoke 방식을 사용한다.
P/Invoke를 사용하기 위해서는
1. 먼저 DLLImplrt를 사용하여 어떤 DLL에서 함수를 가져올지를 지정하고,
2. 해당 함수의 원형을 C# 메서드 원형으로 정의해 준다.
3. 이때 C# 메서드는 statice extern으로 지정한다.
+Win32에 있는 함수들을 C# 메서드 원형으로 변환하기 위해서는 pinvoke.net 사이트를 이용하면 편리하다.
728x90
'C#' 카테고리의 다른 글
ref를 사용하는 경우 (0) | 2022.11.30 |
---|---|
대용량 리스트를 처리하면서 느낀 점 (0) | 2022.11.30 |
[DevExpress] GridControl DataSource에 대용량 데이터 세팅할 시, 느린 이슈 해결하는 방법 (0) | 2022.11.30 |
IEnumerable 리스트를 Linq를 사용 안 하고 빠르게 List로 변환하는 방법 (0) | 2022.11.30 |
Hashtable, Dictionary (0) | 2022.11.17 |