2

我正在开发一个 ASP.NET Web 应用程序。该站点生成包含手写内容图像(签名等)的 PDF 文件。位图图像由 Microsoft.Ink 库的某些方法创建,转换 MS Ink 数据(在 Tablet PC 上生成并传输到站点。)。

现在,它在我的 Vista 开发机器上像魅力一样工作,但在生产服务器(Windows Server 2008 64 位机器)上却不行。除了我部署的 .NET 程序集之外,还有一些用于 Microsoft.Ink 的非托管代码。所以我在服务器上安装了 Tablet PC SDK 1.7 - 但我仍然在 ASP.NET 中收到一些缺少 COM 组件的错误消息(COMException 0x80040154):

由于以下错误,检索具有 CLSID {937C1A34-151D-4610-9CA6-A8CC9BDB5D83} 的组件的 COM 类工厂失败:80040154。

我读过Windows Server 2008 R2 可以选择安装 Handwriting Recognition。是否也有适用于 Windows Server 2008 的软件包?我在谷歌上搜索,但我找不到解决方案。

谢谢!

4

3 回答 3

2

您是否尝试过仅针对 x86 重新编译?您可能会发现其中一个组件是 32 位的,并且与 64 位代码不兼容。最近,当我升级到具有 64 位 Vista 的新笔记本电脑时,我也有类似的经历——一个过去编译得很好的项目现在不再适用了。事实证明,其中的 Crystal Reports 组件只有 32 位,不能用于 64 位代码。我从作为活动解决方案平台的“任何 CPU”更改为“x86”,它运行良好。不幸的是,这意味着您的应用程序不会充分利用服务器的 64 位功能,但它会工作。

于 2009-09-14T04:38:01.513 回答
1

我做了一堆谷歌帖子,并在另一个组中找到了这个帖子。我不知道它是否会帮助你,但它在这里......

正如 Steve Goodwin 在他的帖子中所说,在 Vista 64 位环境中,WISPTIS.EXE 在 C:\Windows\SysWOW64\ 中不可用,但在 c:\Windows\System32 中。所以我复制了它,该死的,它终于起作用了。

这是一个很长的镜头,但是线程中还有其他评论以及针对各种操作系统的其他想法。但是由于没有提及您的错误,因此尚不清楚为什么我选择从该组中发布某些内容。这就是我到达那里的方式。

首先,我用谷歌搜索了您在上面发布的 CLSID。我发现这会显示结果表明与注册表值关联的文件是 WISPTIS.EXE,所以我用谷歌搜索并得出 WISPTIS.exe 是截图工具的事实......所以带来了更多搜索页面我对此,这对我来说似乎只是因为我的 64 位 Vista 在错误的位置寻找文件时遇到了足够多的问题,这似乎是一个可能的罪魁祸首。

无论如何,这是我挖出这个答案的线程的链接。

http://adilhindistan.blogspot.com/2007/07/vista-snipping-tool-error.html

于 2009-09-15T04:13:35.403 回答
0

这可能是由于 MS Office。CLSID {937C1A34-151D-4610-9CA6-A8CC9BDB5D83} 是 MS Office 附带的 INK CLSID。我遇到了同样的问题,但在安装 MS Office 后,我的问题得到了解决。

于 2011-03-08T15:03:32.590 回答