我已经在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镜像,因此它需要能够在服务器上运行。

最佳答案

我在Windows Server 2008 x64上收到相同的错误。尝试了x64和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)

关于powershell - PSImageTools无法加载Wia.ImageFile,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9779493/

10-09 09:57