C# 如何检测prism和amp之间的差异;使用TwainDotNET时使用非prism 64位应用程序
我正在尝试使用Windows 2008终端服务器(64位)上运行的内部应用程序。对于这个库不能在64位机器上本机使用,并且它(以及所有使用它的应用程序)应该针对x86平台进行编译,我没有发现任何评论。(我正在使用VS2010) 然而,问题是:C# 如何检测prism和amp之间的差异;使用TwainDotNET时使用非prism 64位应用程序,c#,mvvm,prism,twaindotnet,C#,Mvvm,Prism,Twaindotnet,我正在尝试使用Windows 2008终端服务器(64位)上运行的内部应用程序。对于这个库不能在64位机器上本机使用,并且它(以及所有使用它的应用程序)应该针对x86平台进行编译,我没有发现任何评论。(我正在使用VS2010) 然而,问题是: 示例应用程序-TestAppWpf(来自TwainDotNET包)-在针对任何CPU进行编译时(因此在服务器上以64位模式运行),通常在(我们的)服务器上工作 使用带有Unity/MEF的Prism的我的(即使是最简单的示例)应用程序总是崩溃,例外情况是
- 示例应用程序-TestAppWpf(来自TwainDotNET包)-在针对任何CPU进行编译时(因此在服务器上以64位模式运行),通常在(我们的)服务器上工作
- 使用带有Unity/MEF的Prism的我的(即使是最简单的示例)应用程序总是崩溃,例外情况是“试图加载格式不正确的程序(来自HRESULT的异常:0x8007000B)”
Loaded += delegate
{
try
{
Twain _twain;
var hook = new WpfWindowMessageHook(App.Current.MainWindow);
_twain = new Twain(hook);
}
catch (Exception ex)
{
MessageBox.Show(GetText(ex, true), "twain", MessageBoxButton.OK, MessageBoxImage.Error);
};
};
接球部分现在只是愚蠢的“倾倒”。。。
当调用twain_32.dll(DsmParent函数)库时,异常首先发生
[DllImport("twain_32.dll", EntryPoint = "#1")]
public static extern TwainResult DsmParent([In, Out] Identity origin, IntPtr zeroPtr, DataGroup dg, DataArgumentType dat, Message msg, ref IntPtr windowHandle);
]
- 我也尝试过重新编译整个项目和库以达到x86的目标,但仍然有类似的结果-TestAppWpf有效&我的应用程序没有
- 无需提及的是,在我的开发机器(32位)上,一切都像一个符咒
Martin F.对此有一个答案将是非常好的,但无论如何我将不得不切换到32位应用程序。因为虽然示例应用程序以64位模式启动,但它无法访问任何32位twain驱动程序。如果能回答这个问题,那就太好了,但无论如何我都必须切换到32位应用程序。因为尽管示例应用程序以64位模式启动,但它无法访问任何32位twain驱动程序。