Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 20943|Отговор: 0

[Източник] C# импортира и извиква Win32 API функции чрез DllImport

[Копирай линк]
Публикувано в 26.11.2015 г. 10:14:48 ч. | | |
В програмите на C# често трябва директно да извикваме основните API-та, предоставени от Windows, за по-добър контрол на работата на програмата, но тъй като C# се изпълнява върху . Не можем да извикваме управляваните езици в Net CLR чрез директно включване на .h заглавния файл на Win32 API, както при език като C++. За щастие, Microsoft ни предостави възможност да свързваме функции от Win32 API в C# код чрез DllImport Attribute още от самото начало.
[DllImport("user32.dll", EntryPoint = "FindWindow")]
public static extern int FindWindow(
            string lpClassName,
            низ lpWindowName);
Сред тях user32.dll посочва името на динамичната библиотека за връзки в Win32, която трябва да бъде импортирана, докато свойството EntryPoint определя дефиницията на името на функцията, която трябва да бъде съпоставена в библиотеката на Win32. Трябва да се отбележи, че в C# всяка C# функция, която трябва да се използва като външен прокси на функция, трябва да бъде декларирана като публичен статичен външен ***.





Предишен:"Инициализаторът на типа 'Emgu.CV.CvInvoke' направи изключение"?
Следващ:Моля, кажете ми как да тренирам win10 Cortana
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com