Skip to main content
Known Participant
February 16, 2018
Answered

Plugin SDK 1.25 Samples with VS2017?

  • February 16, 2018
  • 5 replies
  • 1644 views

Hello!

My question is simple: What do I have to do to build the SDK samples project with Visual C++ 2017? Or is 2010 really the only version that works?

I tried and followed the guide in getting-started.pdf except for using 2017 instead of 2010 and got about 2300+ errors which all can be traced to a couple of definitions in locale_hack.h and xlocnum_hack.h (_THROW0, _LONGLONG, _ULONGLONG).

I'm not really keen to dig up VS 2010 again, so I'd like to know if anyone got this to work.

Thanks a lot!

Best Regards,

Hans

many years of experience with InDesign scripting, but total noob when it comes to plug-ins...

This topic has been closed for replies.
Correct answer Test Screen Name

Remember that a plug-in is not like an app: it becomes part of another app. So everything it does is in an environment shared with InDesign and with all of the other plug-ins. To play nice you really need to use exactly the same build environment as InDesign itself. A really experienced plug-in developer might be able to work around issues, but if you are new to this, the world of pain you might get makes the prospect of installing an old Visual Studio seem like a walk in the park. This is true of all plug-in development, not just InDesign.

5 replies

December 23, 2019

Huh, there is no reason why you shouldn't use VS2017 instead of VS2010. Some small adaptions might be necessary, but from what I remember, the samples converted automatically and worked just fine. I tested with VS2010, VS2012, VS2013, VS2015, VS2017 and VS2019 in the past for various projects and never had any bigger problems. You can also have all of the compilers installed on the same computer and just use the latest VS IDE and can then tell which compiler to use, but as I said, that shouldn't be necessary for simple AE plugins like the SDK samples.

 

Legend
February 19, 2018

Parallels Desktop is a virtual machine for a Mac, and the virtual machines can be Mac OS or Windows (or Linux). So if I want to run an old XCode I boot up the old system in a virtual machine, where I have the old XCode ready. Even if they need the same Mac OS I find it best to keep xcode versions in separate machines.

Community Expert
February 19, 2018

Thanks, i did search a bit and did find that Parallels can run MAC VM as well, i used it just a bit for Windows and hence the confusion. I will try using it for a MAC, i am planning to use a Sierra VM on Yosemite i hope it won't be an issue using a newer VM on an older host OS. If you have any wiki on how to create the MAC VM please share. I found the following

Run older versions of Mac OS X seamlessly with macOS Sierra - Parallels Blog

Thanks,

-Manan

-Manan
Legend
February 19, 2018

For using multiple XCodes, I use Parallels desktop. In some cases it's the only way to reconcile the required systems, and anyway it keeps things tidy. Maybe you could do similar for Windows.

Community Expert
February 19, 2018

Does Parallels desktop allow to run multiple versions of MAC? As far i remember using it, it allows running Windows programs on a MAC. Could you elaborate on how you run multiple XCodes(requiring different version of MACOS) using Parallels.

-Manan

-Manan
Test Screen NameCorrect answer
Legend
February 18, 2018

Remember that a plug-in is not like an app: it becomes part of another app. So everything it does is in an environment shared with InDesign and with all of the other plug-ins. To play nice you really need to use exactly the same build environment as InDesign itself. A really experienced plug-in developer might be able to work around issues, but if you are new to this, the world of pain you might get makes the prospect of installing an old Visual Studio seem like a walk in the park. This is true of all plug-in development, not just InDesign.

HansSH04Author
Known Participant
February 19, 2018

Thanks for your answers, guys!

Yes, I'm aware of all that. I mainly asked because I would like to avoid to step back to VS2010 - there was a chance that someone found an easy way to make it work with later versions. But well, I guess it's time to install the old VS again. Luckily my customer only uses Windows as a platform and I don't have to bother with XCode on top of that... ;-)

Best Regards,

Hans

Community Expert
February 17, 2018

Hey Hans,

You are indeed treading a treacherous path which is bound to be filled with issues all along, even if you get the compilation to work. You may run into runtime crashes or undefined code behaviour if you use the non recommended build environment. In C++ its very important to link to the correct CRT libraries else we have all sorts of issues. I know it is frustrating to maintain a whole suite of dev. environments on both MAC and WIN but this is what it is, there is no shortcut here that would save you, bypassing it would bring with it another set of headaches. So i would suggest to abide by the recommended dev. env for your plugin dev.

Have a look at the link below for some more info on the subject

Learn why - Mixing Multiple Visual Studio Versions is Evil | SiOM Systems

-Manan

-Manan