2009-09-11 64 views
2

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

现在,它在我的Vista开发机器上很有魅力,但在Windows Server 2008 64位计算机的生产服务器上却不起作用。除了我部署的.NET程序集外,还有一些针对Microsoft.Ink的非托管代码。所以,我在服务器上安装平板电脑SDK 1.7 - 但是我还是在ASP.NET(0x80040154的收到COMException)缺少一些COM组件的错误消息:

Retrieving the COM class factory for component with CLSID {937C1A34-151D-4610-9CA6-A8CC9BDB5D83} failed due to the following error: 80040154.

我读过Windows Server 2008 R2 has the option to install Handwriting Recognition。是否还有用于Windows Server 2008的软件包?我在谷歌搜索,但我找不到解决方案。

谢谢!

回答

2

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

+0

我接受了这个答案,即使我不必“只编译x86”。我只是将应用程序池更改为32位。这已经足够了 – splattne 2009-09-20 07:12:34

+0

谢谢 - 非常感谢。 – Billious 2009-09-20 10:56:29

+1

我将“启用32位应用程序”应用程序池属性设置为True,它为我解决了这个问题。谢谢 – 2012-07-11 07:29:11

1

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

In a Vista 64 bit environment, as Steve Goodwin says in his post, WISPTIS.EXE is not available in C:\Windows\SysWOW64\ but it is in c:\Windows\System32. SO I copied it, and darn it, it finally works.

这是一个长镜头,但也有其他的想法,不同操作系统的线程其他意见。但它不会立即清楚为什么我选择从这个组发布一些东西,因为你的错误没有被提及。这是我如何到达那里。

首先,我搜索了上面发布的CLSID。我发现这表明该注册表值与WISPTIS.EXE关联的文件的结果显示为WISPTIS.EXE,因此我使用了该命令,并提出了WISPTIS.exe是Snipping工具的事实......因此,还带了几个搜索页对我来说,这看起来很可能只是因为我用64位Vista在错误的地方寻找文件时遇到了足够的问题,这看起来像是一个可能的罪魁祸首。

无论如何,这里是我把这个答案挖出来的线索的链接。

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

+0

非常感谢您的努力。但我无法通过这种方式解决我的问题。 – splattne 2009-09-20 07:13:18

0

这可能是由于微软Office。 CLSID {937C1A34-151D-4610-9CA6-A8CC9BDB5D83}是MS Office附带的INK CLSID。我面临同样的问题,但安装MS Office后,我的问题已修复。

+0

因此,我必须在我的服务器上安装Microsoft Office? – splattne 2011-03-08 16:34:30

相关问题