InDesign Server development with C# over COM

5.3k views Asked by At

I would like to develop an application based on InDesign Server in C# over COM. At the moment I'm struggling with the ideal setup as I can't find a proper ~interop.dll that I could reference from my source repository (for other developers to be able to code against InDesign Server classes, structs etc.). I'm starting to believe that actually there is no such thing, meaning that each and every developer would have to install a trial version of InDesign Server and register it in Visual Studio through COM wrapper. Can someone point me into the right direction?

Thx in advance!

2

There are 2 answers

0
IamDeveloper On BEST ANSWER

You can do it like that:

  1. Install InDesign Server on one machine with Visual Studio 2010.

  2. If you have Windows 7, go to InDesign Server installation folder (e.g. C:\Program Files\Adobe\Adobe InDesign CS5.5 Server) and copy *.dll from folder \omniorb to system32 folder (e.g. C:\Windows\System32 ).

  3. Run InDesignServer.exe as Administrator (e.g. C:\Program Files\Adobe\Adobe InDesign CS5.5 Server\InDesignServerService.exe).

  4. In some test project in Visual Studio add reference (COM tab) named Adobe InDesign Server CS5.5 Type Library - you should see 2 versions, one pointing to IDS installation folder and one to your profile dir.

  5. Compile project, go to \ProjectDir\obj\Debug\ and copy the Interop.InDesignServer.dll .

1
weir On

To get the DLL my team and I reference in our Visual Studio 2010, InDesign CS5 Server automation project, we did the following.

  1. Get a copy of the InDesign Server type library file "Resources for Visual Basic.tlb" from a machine on which InDesign Server is installed.
    • For hints on the .tlb file's location, see page 26 of Introduction to InDesign Server Development.
    • Note that although we did not do so, it may be best to first backup and then delete the .tlb file and then run InDesign Server to ensure InDesign Server regenerates the file with the up-to-date type information. We have experienced some problems with method signatures being out of sync. This issue will be even more significant if you use InDesign Server add-ins (we do not).
  2. Use Microsoft's Type Library Importer to generate the DLL.
    "[some path]\TlbImp.exe" "[some path]\Resources for Visual Basic.tlb" /out:InDesignServer.dll

Good luck!