首页 文章

如何在C#中添加对Photoshop CS4 COM的引用

提问于
浏览
4

我对Photoshop CS4自动化有一点问题 . 当我想在Visual Studio 2008项目中添加对COM API的引用时,Adobe Photoshop对象库不会显示在“COM”选项卡下的“添加引用”面板中 . 但是,Illustrator CS4 Type库显示得很好 . Photoshop本身运行完美,无论是32位还是64位 . Photoshop与Master Suite CS4的其他应用程序一起安装 .

这在两台不同的机器1虚拟PC(Vmware工作站)上同时适用于Windows 7和Windows XP . 我也在VS2010 Beta 1和MS Word VB编辑器中尝试过它,但它在这里也没有用 .

有人有什么想法吗?如果您能够添加引用,那么您的配置是什么?

2 回答

  • 5

    最后,解决方案是使用Windows XP虚拟机和Photoshop的独立安装(而不是整个创意套件) . 您可以使用它生成一个可以在任何Windows上安装Photoshop或其他任何Photoshop CS4(独立或创意套件)的dll .

    编辑:这是整个过程

    使用您喜欢的虚拟化解决方案(Vmware,VirtualBox,VirtualPC等)创建Windows XP虚拟机 . 安装Visual Studio 2008和Photoshop CS4的独立安装(整个创意套装在我的情况下没有用,但你的里程可能会有所不同) . 打开Visual Studio并创建新的VB.NET或C#类库 . 完成此操作后,右键单击解决方案资源管理器中的“reference”文件夹,然后选择添加引用 . 转到COM选项卡,然后搜索“Adobe Photoshop CS4类型库” . 这将添加两个新的引用:“Photoshop”和“PhotoshopTypeLibrary” . 创建一个虚拟函数(尽管可能不需要)并构建您的项目 . 作为一个好的方法,你可以确保编译模式设置为“释放”,但这不是必需的,调试将正常工作 . 构建项目后,转到VM硬盘驱动器上的项目文件夹,然后查找bin \ release文件夹 . 在那里你会看到3个dll:一个以你的项目命名,一个名为Photoshop.dll,另一个名为Interop.Photoshop.dll . 使用Windows 7 x64将最后两个复制到您的开发机器上 . 然后,您可以通过添加引用并浏览到这些2 dll来在项目中导入它们 .

    我注意到一个非常好的事情是,尽管dll是在32位VM上编译的,但如果你的.NET程序在64位模式下运行,它们仍会调用64位版本的Photoshop .

    我希望它有所帮助!

  • 3

    没有必要创建一个虚拟机,在COM没有显示的情况下,某些版本的Photoshop存在问题,要纠正此操作Photoshop作为管理员(只需一次),这将纠正注册表项和COM然后将可用 .

相关问题