Я хочу позвонить в SystemParametersInfo из C #. Первый аргумент этой функции - один из большого набора возможных значений, таких как SPI_GETACCESSTIMEOUT, которые перечислены в документации, но, кажется, нигде не определены.
Я могу найти действительные значения этих вещей в сети и составить перечисление с правильными магическими числами в нем - это работает, но это не то, что нужно. Я хочу быть в состоянии включить что-то, что делает все это для меня. Они должны быть определены где-то!
Что мне сделать, чтобы эта работа работала правильно?
OJ указывает на страницу SPI , что здорово, если я хочу скопировать все это в мой исходный код.
Но я хочу, чтобы компилятор сделал это.
Я должен просто сказать:
[DllImport("user32", CharSet = CharSet.Auto)]
private static extern bool SystemParametersInfo(int uAction, bool uParam, int lpvParam, int fuWinIni);
SystemParametersInfo(SPI_GETACCESSTIMEOUT, 0, ref IsActive, 0);
Вместо этого мне нужно добавить:
public const uint SPI_GETACCESSTIMEOUT = 0x003C;
... и все остальное тоже. Я ищу какую-то команду, которая будет импортировать все эти определения, где бы они ни находились в dll.