2009-07-21 65 views
4

我在Photoshop CS4自動化中遇到了一些問題。當我想在Visual Studio 2008項目中添加對COM API的引用時,Adobe Photoshop Object Library不會顯示在「COM」選項卡下的「添加引用」面板中。但是,Illustrator CS4 Type庫顯示得很好。 Photoshop本身運行完美,無論是32位還是64位。 Photoshop隨Master Suite CS4的其他應用一起安裝。如何在C中添加對Photoshop CS4 COM的引用#

這不適用於Windows 7和Windows XP,在2臺不同的計算機+ 1臺虛擬PC(Vmware工作站)上。我也在VS2010 Beta 1和MS Word VB編輯器中嘗試過它,但它在這裏也沒有工作。

有人有什麼想法嗎?如果您能夠添加參考,您的配置是什麼?

回答

5

有沒有必要創建一個虛擬機,有一些版本的Photoshop中有一個問題,儘可能多的COM沒有顯示,以糾正此管理員運行Photoshop(只是一次),這將糾正註冊表條目和COM將可用。

+0

更好的解決方案,謝謝。 – 2012-01-19 00:34:30

3

最終,解決方案是使用Windows XP虛擬機和獨立安裝的Photoshop(而不是整個創意套件)。您可以使用它來生成可在任何Windows上安裝Photoshop CS4(獨立版或創意套件)的dll。

編輯:這裏是整個過程

用你喜歡的虛擬化解決方案(VMWare和VirtualBox虛擬,虛擬PC等)創建一個Windows XP虛擬機。安裝Visual Studio 2008和Photoshop CS4的獨立安裝(整個創意套裝在我的情況下都不起作用,但是您的里程可能會有所不同)。打開Visual Studio並創建一個新的VB.NET或C#類庫。完成此操作後,右鍵單擊解決方案資源管理器中的「參考」文件夾,然後選擇添加參考。轉到COM選項卡,然後搜索「Adobe Photoshop CS4類型庫」。這將添加兩個新的參考:「Photoshop」和「PhotoshopTypeLibrary」。創建一個虛擬函數(儘管可能不需要)並構建您的項目。作爲一個好的方法,你可以確保編譯模式設置爲「釋放」,但這不是必需的,調試將正常工作。一旦建立了項目,請轉到虛擬機硬盤驅動器上的項目文件夾,然後查找bin \ release文件夾。在那裏你會看到3個dll:一個以你的項目命名,一個命名爲Photoshop.dll,另一個命名爲Interop.Photoshop.dll。用Windows 7 x64將最後兩個複製到您的開發機器上。然後,您可以通過添加引用並瀏覽這些2個DLL來將它們導入到您的項目中。

我注意到一個非常甜的東西,即使dll是在32位虛擬機上編譯的,如果你的.NET程序運行在64位模式下,它們仍然會調用64位版本的Photoshop。

我希望它有幫助!

相關問題