У меня проблема.Это определение структуры C:
typedef struct _UNIMDM_CHG_DEVCFG {
DWORD dwCommand;
LPCWSTR lpszDeviceClass;
LPVARSTRING lpDeviceConfig;
DWORD dwOption;
DWORD dwValue;
} UNIMDM_CHG_DEVCFG;
Я использую .NET Compact Framework 3.5 на Windows CE.Я пробовал много способов упорядочить эту структуру, например:
[StructLayout(LayoutKind.Sequential)]
internal struct UnimodemChangeDeviceConfiguration
{
public int dwCommand;
public byte[] lpszDeviceClass;
public byte[] lpDeviceConfig;
public int dwOption;
public int dwValue;
}
Проблема в том, что при вызове Marshal.SizeOf для экземпляра этой структуры он вызывает исключение NotSupportedException.Зачем?Я попытался использовать строку для lpszDeviceClass, но снова с проблемами.Похоже, типы указателей не могут быть маршалированы.