Автор Михаил задал вопрос в разделе Другие языки и технологии
DllImport: из C++ в С# и получил лучший ответ
Ответ от Modern Иванов[гуру]
Я сильно в такие вещи не вникал, но когда-то столкнулся с похожей проблемой. При передаче в ф-цию указателя на Point получал ошибку [DllImport(\"user32.dll\")] private static extern bool GetCursorPos(ref Point lpPoint); Всё решилось, когда создал свою структуру Point таким образом [StructLayout(LayoutKind.Sequential)] struct Point { public int _x; public int _y; public Point(int a, int b) { _x = a; _y = b; } } В этом случае атрибут указывает, что структура будет использоваться неуправляемым кодом, а по-этому она в памяти располагается особым образом. Может и тебе нужно смотреть в эту сторону, так как числа в .NET -это структуры и с ними возможны такие же проблемы. Хотя может я и не прав.
Совместимость программ
вот кусок из заголовочного файла библиотеки
подробнее...
Где найти GetModuleHandle для c#
[DllImport("kernel32.dll")]
public static extern IntPtr GetModuleHandle(string
подробнее...
Ребят, как сделать чтобы моя форма была поверх всех всех окон Windows, а не только поверх окон моего приложения на C#?
В форме:
using System.Runtime.InteropServices;
...
//функция winapi
подробнее...
Вопрос по vb.net и winapi
Двигайтесь в сторону оснастки ОС "WMI".
Вот ссылка на пример с "codeproject.com":
подробнее...