Copy link to clipboard
Copied
I've downloaded the Adobe InDesign Plug-In SDK (19.0.0.151), and can't even successfully launch a simple WriteFishPrice plugin which I'm creating following the tutorial that comes within the SDK folder (<SDK>/docs/html/id_getting_started_with_indesign_plugin_development.html)
After building the plug-in with Visual Studio and copying plugin files to the InDesign's Plug-Ins directory I'm getting this error during the launch of Adobe InDesign:
Plug-Ins directory:
What could be the issue, since plugin is successfully being built in Visual Studio
-------------------------------
1) I'm creating a "PluginConfig.txt" file at "C:\Users\<user>\AppData\Roaming\Adobe\InDesign\Version <..>\<locale>" directory with content:
"""
"D:\Program Files\InDesign SDK\build\win\debug\sdk"
What I have is:
Or C++ plugins have been removed in later versions of Adobe InDesign? I'm testing it with 2020 version
2) Coming to the part where I create a dialog-based plug-in using dolly
Here is the win config:
(Since Im creating plugins in custom directory, and my SDK is in other directory I'm specifying few paths as an abosulute, correct me for the best practices)
Coming to installing the right Visual Studio and necessary components, the guide says general stuff like:
It doesn't say exactly which workload and individual components are required to be installed, which is misleading
Initially I tried installing minimum amount of components with names closer to the "Visual C++", it ended up installing 3 gigs of data and still it couldn't open simple .vcxproj file solution. Then it started working, after I mass installed bunch of workloads and individual components, which ended up having 8.5GB (IDE) + 2.8GB (Shared) ≈ 11GB.
Now I know that I have installed bunch of unnecessary stuff, but I wouldn't If the guide provided me with only required Workloads and Individual Components (from Visual Studio Installer)
For example, I wouldn't have faced "xlocnum hack" error during building process If the guide specified which Windows SDK version is required
Some of the text is obsolete or unclear, for example in Step 1.7 it says:
"Before building your plug-in, set up your InDesign development environment (IDE) to use the InDesign ODFRC. To do this, choose Tools > Options, and add the <SDK>\devtools\bin directory under the Executable Files directory path."
But when I open Tools > Options, there is no "Executable Files" thing:
Here is the build log:
Build started...
1>------ Build started: Project: WriteFishPrice, Configuration: Release x64 ------
1>VCPlugInHeaders.cpp
1>WFPActionComponent.cpp
1>WFPDialogController.cpp
1>WFPDialogObserver.cpp
1>PlugInStatics.cpp
1>SDKPlugInEntrypoint.cpp
1>WFPID.cpp
1>WFPNoStrip.cpp
1>TriggerResourceDeps.cpp
1>Performing Custom Build Tools
1>ODFRC deleting old resources...
1>Could Not Find D:\some_path\id-sdk-plugins\objRx64\WriteFishPrice\*.idrc
1>merge_res.cmd - calling ConcatRes
1> 1 file(s) copied.
1>ConcatRes skipped since "..\objRx64\WriteFishPrice"\WFP.fres is an empty file.
1>merge_res.cmd done.
1>Deleting old resources...
1>The system cannot find the file specified.
1>14 File(s) copied
1> Creating library ..\..\..\build\win\objRx64\WriteFishPrice/WriteFishPrice.lib and object ..\..\..\build\win\objRx64\WriteFishPrice/WriteFishPrice.exp
1>WriteFishPrice.vcxproj -> D:\some_path\id-sdk-plugins\releasex64\sdk\WriteFishPrice.sdk.pln
1> 1 file(s) copied.
1>restore_res.cmd done.
========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
========== Build started at 6:05 PM and took 07.922 seconds ==========
1 Correct answer
> I've downloaded the Adobe InDesign Plug-In SDK (19.0.0.151)
19.0 is also named "2024"
> I'm testing it with 2020 version
There is your problem - that would be InDesign Version 15. You also need a matching InDesign SDK version 15. Don't forget to use the compiler specified in the SDK, that would be also version 15 aka VStudio 2017. (if my notes are right: 15.7.4 - a quite late brew of VS 2017 which was also used for CC 2019) I think that VStudio version would best be combined with Windows 7 SP1,
...Copy link to clipboard
Copied
Your build log looks OK; just to be sure, is your resulting PLN file around 1MB or smaller, around 200-300KB?
The initial message that you get might be due to using the InDesign Plug-In SDK (19.0.0.151) on a pre-release version of InDesign, or on a debug version of InDesign. Unlike QuarkXPress, Indesign is very picky about debug/release and making sure that the minor version of the SDK used does not exceed the minor version of the EXE.
The "xlocnum hack" error during building process is not due to the Windows SDK version being used, but rather to the minor version of Visual Studio used; you need to make sure that your Visual Studio 2022 is not updated beyond version 17.1 or, if you are willing to tweak it a bit, you can get the SDK 18 and 19 to compile with versions of Visual Studio up to 17.4. But any version of Visual Studio 17.5 or above makes it way too complicvated to tweak the xlocnum hack file.
Very best regards,
Olivier
Copy link to clipboard
Copied
> I've downloaded the Adobe InDesign Plug-In SDK (19.0.0.151)
19.0 is also named "2024"
> I'm testing it with 2020 version
There is your problem - that would be InDesign Version 15. You also need a matching InDesign SDK version 15. Don't forget to use the compiler specified in the SDK, that would be also version 15 aka VStudio 2017. (if my notes are right: 15.7.4 - a quite late brew of VS 2017 which was also used for CC 2019) I think that VStudio version would best be combined with Windows 7 SP1, not sure how it fares with Windows 8.
Copy link to clipboard
Copied
"I'm testing it with 2020 version"
I totally missed this in the original post.
Copy link to clipboard
Copied
You are using InDesign SDK 19.0 (2024) and loading the plugins with InDesign CC2020. This will not work.
InDesign SDK 19.0 is meant only for InDesign CC2024.
For every version of InDesign Application, SDK is released and you need to compile it with same SDK.
InDesign Plugins are forward compitatible within one major version of InDesign Application. With the major version change of InDesign Application, plugins has to be recompiled using the InDesign SDK released for the InDesign application.
For Eg. - If you compile your plugin using InDesign SDK 18.0 (2023) then it will work for InDesign CC2023 and with all its future minor versions of CC2023. It will not work with InDesign CC2022, CC2024.
If you compile your plugin using InDesign SDK 18.1 (2023.1) then it will work with InDesign CC2023.1 and all its future minor versions after CC2023.1. But it will not work with InDesign CC2023.0.
Hope this helps.