C# 将Win32 DLL调用到netcoreapp测试项目中
我有一个“旧的”win32 dll,我需要将它加载到我的单元测试/集成测试项目中以进行一些测试处理 此dll仅被引用为C# 将Win32 DLL调用到netcoreapp测试项目中,c#,winapi,dll,.net-core,C#,Winapi,Dll,.net Core,我有一个“旧的”win32 dll,我需要将它加载到我的单元测试/集成测试项目中以进行一些测试处理 此dll仅被引用为 private static extern ushort SSV_InitTrace( [MarshalAs(UnmanagedType.LPStr)]string fileName, [MarshalAs(UnmanagedType.LPStr)]string mode, ushort module, byte level)
private static extern ushort SSV_InitTrace(
[MarshalAs(UnmanagedType.LPStr)]string fileName,
[MarshalAs(UnmanagedType.LPStr)]string mode,
ushort module, byte level);
这是一个在win32平台上运行的“经典”xUnit测试项目。
然而,在我的集成测试中,我需要加载来自我的解决方案的一组netcore程序集。
我这样定义我的project.json:
"dependencies": {
"xunit": "2.2.0-beta2-build3300",
"CommonTools": "1.0.0",
"FluentAssertions": "4.6.1",
"SESAMEngineFacturation": "1.0.0",
"Moq": "4.6.25-alpha",
"DALCore": "1.0.0",
"BusinessCore": "1.0.0",
"dotnet-test-xunit": "2.2.0-preview2-build1029",
"System.Reflection.Extensions": "4.0.1",
"SESAMReglementaire": "1.0.0-*",
"SESAMReglementaire.Tests": "1.0.0-*",
"System.Runtime.InteropServices": "4.1.0",
"System.Linq.Expressions": "4.1.0"
},
"frameworks": {
"netcoreapp1.0": {
"dependencies": {
"Microsoft.NETCore.App": {
"type": "platform",
"version": "1.0.0"
},
"System.Reflection.TypeExtensions": "4.1.0",
"System.Diagnostics.TraceSource": "4.0.0"
},
"imports": [
"dnxcore50",
"portable-net45+win81"
]
}
}
当我点击dllimport时,我遇到了一个badImageFormatException。
如何强制netcoreApp在win32模式下运行?
我已经试过了
"buildOptions": { "platform": "x86" }
进入netcoreapp部分,但如果我这样做,测试将不再显示在VS测试资源管理器中
我怎样才能让经理完成这项工作