我已在Server 2008 R2计算机上安装了PowerShellPack,但无法使用PSImageTools模块。所有图像操作都会产生错误New-Object : Cannot load COM type Wia.ImageFile
。我尝试在我的Windows 7笔记本电脑上安装相同的软件包,然后就可以了。
我认为这必须是因为服务器上缺少Dll:s,但即使从笔记本电脑中复制wia*.dll
文件到System32(没有相应的文件)也有帮助。无法注册回复“文件无法加载”的dll(例如regsvr32 wiaaut.dll
)。
那么,有人在Windows Server 2008上成功使用过Wia吗?我们将运行一个计划的PowerShell脚本来更新用户的Outlook图像,因此它需要能够在服务器上运行。
答案 0 :(得分:2)
我在Windows Server 2008 x64上遇到同样的错误。尝试了x4和x86版本的PowerShell v2。
作为替代方案,您可以使用System.Drawing.Image
。取决于您的脚本需要做什么。也许发布一些示例代码。
http://msdn.microsoft.com/en-us/library/system.drawing.image.aspx
Add-Type -AssemblyName System.Drawing
$image = [System.Drawing.Image]::FromFile("C:\pic.bmp")
编辑:以下是更改图片尺寸的方法:
$pixWidth = 90
$pixHeight = 90
$image2 = New-Object System.Drawing.Bitmap -ArgumentList $image, $pixWidth, $pixHeight
$image2.Save('C:\new_pic.bmp', [System.Drawing.Imaging.ImageFormat]::Bmp)
答案 1 :(得分:2)
经过大量搜索后发现这篇文章: http://kb.winzip.com/kb/entry/207/
基本上,您需要在Windows 2003或Windows 2008中启用并设置为“自动”Windows Image Acquisition“服务,首先安装桌面体验功能,然后启用”Windows Image Acquisition“服务并设置为”自动“。