0

This is a question related to the plugin update to work with 3ds Max 2013. Needless to say, this plugin works with all previous versions of 3ds Max.

I am getting link error LNK2019 on BMMSplitFilename() function. I am suspecting unicode issue being behind it.

Here is the full definition of BMMSplitFilename() as defined in bitmap.h of 3ds Max 2013 SDK:

BMMExport void BMMSplitFilename(const MCHAR *name, MCHAR *directory, MCHAR *filename, MCHAR *extenstion)

Can anybody tell me why am I getting LNK2019? And, what to do to resolve this error?

Jason Sturges
  • 15,855
  • 14
  • 59
  • 80
zman2012
  • 11
  • 1
  • Are you compiling it with unicode character set, and have you added bmm.lib to the additional linker dependencies? – Rotem Jun 22 '12 at 15:41
  • Thank you Rotem. We are compiling with unicode character set, and have bmm.lib in Additional Linker Dependencies. We have discovered however that we had to specify unicode on two locations: – zman2012 Jun 29 '12 at 20:17
  • Thank you Rotem. We are compiling with unicode character set, and have bmm.lib in Additional Linker Dependencies. We have discovered, however, that we had to specify unicode on two locations: (1) Configuration Properties > General > Character Set has to be set to 'Use Unicode Character Set'; and (2) Configuration Properties > Resources > General > Preprocessor Definitions has to be set to '_UNICODE;UNICODE;%(Preprocessor Definitions)'. Thanks again. – zman2012 Jun 29 '12 at 20:30
  • That's strange - setting the first usually automatically sets the second. Perhaps someone deleted it manually by mistake. You should post your solution as an answer, perhaps it will be useful to others. – Rotem Jun 29 '12 at 20:40
  • Hi Rotem. No other person had access to the Properties. It is bug, perhaps. I thought that 'Add Comment' is visible to all. How do I post the above as an 'Answer'? Thanks. – zman2012 Jul 02 '12 at 15:44
  • 'Add Comment' is in fact visible to everyone. Regardless, you should have a link right below this comment to answer your own question. – Rotem Jul 02 '12 at 16:51

1 Answers1

1

We are compiling with unicode character set, and have bmm.lib in Additional Linker Dependencies. We have discovered, however, that we had to specify unicode on two locations:

  1. Configuration Properties > General > Character Set has to be set to 'Use Unicode Character Set'; and
  2. Configuration Properties > Resources > General > Preprocessor Definitions has to be set to _UNICODE;UNICODE;%(Preprocessor Definitions).
Jon Lin
  • 142,182
  • 29
  • 220
  • 220
zman2012
  • 11
  • 1