Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Общие вопросы .NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.07.2010, 22:19   #1
Lemo
Форумчанин
 
Аватар для Lemo
 
Регистрация: 13.10.2008
Сообщений: 714
Радость Как можно юзать WinAPI в C# ?

// В делфях подключаешь
Код:
uses windows;
А как в C# ?
Lemo вне форума Ответить с цитированием
Старый 12.07.2010, 13:45   #2
ashtabahu
 
Регистрация: 09.04.2010
Сообщений: 0
Восклицание

Для этого надо узнать все типы параметров нужной API функции и обьявить ее.
Например обьявление MessageBoxA будет вот так:
Код:
        [DllImport("user32")]
        private static extern int MessageBoxA(IntPtr hWnd, string lpText, string lpCaption, int uType);
ashtabahu вне форума Ответить с цитированием
Старый 12.07.2010, 17:27   #3
Lemo
Форумчанин
 
Аватар для Lemo
 
Регистрация: 13.10.2008
Сообщений: 714
Радость

1)Допустим я хочю заюзать SetCursorPos и словил ерорры(1.jpg)...
2)Скриншот 2 : cледуя данным путям нету папки lib ... что посоветуете?!
Изображения
Тип файла: jpg 1.jpg (106.2 Кб, 136 просмотров)
Тип файла: jpg 2.jpg (44.4 Кб, 64 просмотров)

Последний раз редактировалось Lemo; 12.07.2010 в 17:55.
Lemo вне форума Ответить с цитированием
Старый 12.07.2010, 19:11   #4
LT.
The IT Crowd
Пользователь
 
Аватар для LT.
 
Регистрация: 10.10.2008
Сообщений: 41
По умолчанию

Надеюсь поможет - http://www.pinvoke.net

P.S. Ресурс англоязычный.
"Одни наслаждаются дождём, другие просто промокают." - Роджер Миллер
LT. вне форума Ответить с цитированием
Старый 12.07.2010, 19:55   #5
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Цитата:
Сообщение от Lemo Посмотреть сообщение
1)Допустим я хочю заюзать SetCursorPos и словил ерорры(1.jpg)...
Для большей части апишных функций есть готовые обертки или аналоги. Для изменения позиции мыши есть такое:
Код:
System.Windows.Forms.Cursor.Position = new Point(10, 10);
pu4koff вне форума Ответить с цитированием
Старый 15.07.2010, 18:29   #6
(C)stalin(Cpp)
Пользователь
 
Аватар для (C)stalin(Cpp)
 
Регистрация: 04.10.2008
Сообщений: 47
По умолчанию

Ребьята....есть такая штука как DllImport - с ее помощью можно выдрать абсолютно любую функцию WinApi.....и что самое главное не надо искать никаких аналогов!
функция_пахан(1000000$)
{ чисто_в_натуре_написать("хеллоу мир");
вернуть_в_налоговую(0$); }
(C)stalin(Cpp) вне форума Ответить с цитированием
Старый 16.07.2010, 11:35   #7
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Цитата:
Сообщение от (C)stalin(Cpp) Посмотреть сообщение
Ребьята....есть такая штука как DllImport - с ее помощью можно выдрать абсолютно любую функцию WinApi.....и что самое главное не надо искать никаких аналогов!
Ага. Аналоги искать долго и неинтересно, а искать заголовок нужной функции, описывать её ручками и вызывать через одно место в программе - это лучший выход.
Я не понимаю зачем совершать лишние телодвижения, если их уже до Вас совершили. Сравните как будет выглядеть вызов MessageBox'a из .NET Framework и того, что привел в качестве примера ashtabahu (там еще вопрос и по поводу юникода будет)
pu4koff вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
BinToHex из Classes. Как юзать и скормить ей большой String Alex Cones Общие вопросы Delphi 5 05.11.2009 17:18
Маршрутизация.Как юзать локальные ресурсы? Zerone Свободное общение 10 06.10.2009 19:27
Юзать два 2-х ступенчетых переключателя как один 4-х ступенчетый Altera Свободное общение 25 07.08.2009 21:31
как юзать библиотеку time в с++ ? Познающий Общие вопросы C/C++ 1 11.06.2009 17:22
RichEdit. как можно вставлять картинку туда? как можно Скрол програмно вниз двигать? Svop Компоненты Delphi 7 28.11.2006 21:07