繁体   English   中英

DLL导入使用SYSTEMTIME

[英]DLL Import use SYSTEMTIME

我有一个使用C ++开发的dll。 现在,我希望在我的C#应用​​程序中使用这些功能。 我知道如何在应用程序中使用dll,但是我的问题是dll需要一个类型为SYSTEMTIME的参数。

[DllImport("MyControl.dll")]
 public static extern Int32 MyCONTROL_NewControl(SYSTEMTIME stime);

但是我无法在C#代码中使用SYSTEMTIME 请提出有关如何使用SYSTEMTIME的解决方法。

这应该工作:

[StructLayout(LayoutKind.Sequential)]
private struct SYSTEMTIME {
    Int16 wYear;
    Int16 wMonth;
    Int16 wDayOfWeek;
    Int16 wDay;
    Int16 wHour;
    Int16 wMinute;
    Int16 wSecond;
    Int16 wMilliseconds;
}

另请参见Christian.K指出的来自pinvoke的即用型解决方案。

这就是您在c#中使用它的方式:

    [StructLayout(LayoutKind.Sequential)]
    public struct SYSTEMTIME
    {
        ushort wYear;//ushort = WORD
        ushort wMonth;
        ushort wDayOfWeek;
        ushort wDay;
        ushort wHour;
        ushort wMinute;
        ushort wSecond;
        ushort wMilliseconds;
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM