Pergunta

Estou tendo um pequeno problema com a automação Photoshop CS4. Quando eu quiser adicionar uma referência para o API COM no meu projeto do Visual Studio 2008, o objeto Adobe Photoshop biblioteca não aparecer no "Adicionar referências" painel na guia "COM". No entanto, a biblioteca Illustrator CS4 Tipo mostrar-se muito bem. -se Photoshop funcionar perfeitamente, tanto no sabor 32 e 64 bits. Photoshop foi instalado junto com todos os outros aplicativos do Master Suite CS4.

Isto não funcionou no Windows 7 e no Windows XP, no dia 2 de máquina + 1 PC virtual diferente (VMware Workstation). Eu também tentei lo no VS2010 Beta 1 e o editor MS Word VB, mas não deu certo aqui também.

Alguém tem alguma idéia? Se você fosse capaz de adicionar uma referência, qual foi a sua configuração?

Foi útil?

Solução

Não há necessidade de criar uma máquina virtual, há um problema com algumas versões do Photoshop em tanto o COM não mostra, para corrigir esse prazo Photoshop como Administrador (apenas uma vez) e isso vai corrigir as entradas do Registro ea COM estarão então disponíveis.

Outras dicas

No final, a solução foi usar uma máquina virtual Windows XP com uma instalação autónoma do Photoshop (em vez de todo o conjunto criativo). Você pode usá-lo para gerar uma dll que o trabalho em qualquer Windows com qualquer instalação do Photoshop CS4 (independente ou o Creative Suite).

EDIT: Aqui está todo o processo

Criar uma máquina virtual do Windows XP com a sua solução de virtualização favorito (Vmware, VirtualBox, VirtualPC etc). Instale o Visual Studio 2008 e uma instalação autônoma do Photoshop CS4 (inteiros Os ternos criativas não funcionaram no meu caso, mas sua milhagem pode variar). Abra o Visual Studio e criar quer uma nova VB.NET ou C # biblioteca de classes. Uma vez feito isso, clique direito sobre a pasta "referência" no explorador solução, e selecione Adicionar referência. Vá para a guia COM, e procure por "biblioteca de tipos Adobe Photoshop CS4". Isto irá adicionar duas novas referências: "Photoshop" e "PhotoshopTypeLibrary". Criar uma função fictícia (apesar que não pode ser exigido) e construir o seu projeto. Como um bom mesure, você pode ter certeza de que o modo de compilação é definida como "release", mas isso não é necessário, de depuração irá funcionar bem. Uma vez que seu projeto é edificada, vá para a pasta do projeto em seu disco rígido VM e procure a pasta bin \ release. Lá você verá 3 dll: uma homenagem a seu projeto, um chamado Photoshop.dll e outro namde Interop.Photoshop.dll. Copie os dois últimos na sua máquina developpement com o Windows 7 x64. Você pode, em seguida, importá-los em seu projeto, adicionando referências e navegar aos 2 dll.

Uma coisa muito doce que notei foi que apesar do dll foram compilados em um 32 bit VM, eles ainda chamaria a versão do Photoshop de 64 bits se o seu programa .NET gerido no modo de 64 bits.

Espero que ajuda!

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top