当我发布我的应用程序--基于Monogame的XAML--Windows8.1应用程序和Windows 8.1 (通用应用程序,两个二进制文件)--认证失败:
此应用程序类型- Api=XInputEnable不支持此API。Module=xinput1_4.dll。File=SharpDX.XInput.dll。 此应用程序类型- Api=XInputGetAudioDeviceIds不支持此API。Module=xinput1_4.dll。File=SharpDX.XInput.dll。 此应用程序类型- Api=XInputGetBatteryInformation不支持此API。Module=xinput1_4.dll。File=SharpDX.XInput.dll。 此应用程序类型- Api=XInputGetCapabilities不支持此API。Module=xinput1_4.dll。File=SharpDX.XInput.dll。 此应用程序类型- Api=XInputGetKeystroke不支持此API。Module=xinput1_4.dll。File=SharpDX.XInput.dll。 此应用程序类型- Api=XInputGetState不支持此API。Module=xinput1_4.dll。File=SharpDX.XInput.dll。 此应用程序类型- Api=XInputSetState不支持此API。Module=xinput1_4.dll。File=SharpDX.XInput.dll。 此应用程序类型- Api=GetNativeSystemInfo不支持此API。Module=kernel32.dll。File=AdDuplex.Universal.Win.WinRT.winmd。
所有这些消息都是关于Windows8.1二进制文件的。我以前有过Monogame和AdDuplex的应用程序,一切都很好。好的,即使我不包括AdDuplex,也有SharpDX.XInput.dll,它隐式地包含在项目中(我没有包括它)。
以防万一-在我的应用程序中,我包括以下内容:
c:\Program (X86)\MonoGame\v3.0\Assemblie\Windows8 8\ MonoGame.Framework.dll SharpDX.dll SharpDX.Direct2D1.dll SharpDX.Direct3D11.dll SharpDX.DXGI.dll SharpDX.MediaFoundation.dll SharpDX.XAudio2.dll
App在Win 8.1和10中运行正常,但认证失败。尝试了c:\Program (x86)\MonoGame\v3.0\Assemblies\WindowsUniversal文件夹中的dll,但它们以.net 5.0为目标,而win8.1应用程序则以4.5.1为目标。
是否有可能发布MonogameWindows8.1XAML应用程序?
发布于 2017-03-03 18:38:13
在我的特殊情况下,有一个简单的解决方案。我使用winrt进行后台处理,它是“可移植的”,所以我在其中包含了用于win8 xaml的Monogame,只是为了编译代码库。因此,我将这个winmd包含在win和wp项目中,并且所有工作都在本地进行。但msft分析器发现dll名称和认证失败。
解决方案是制作两个“可移植的”lib,完全相同,但在第二个版本中,我为winphone 8.1添加了Monogame。Msft承诺您可以为两个二进制文件使用一个项目,因为它是可移植的(而且它可以工作,但msft不接受这个二进制文件)!和往常一样,msft文档只是一个耻辱。他们甚至买了Monogame和Xamarin..。
https://stackoverflow.com/questions/42543289
复制相似问题