Kinook Software Forums

Go Back   Kinook Software Forums > Visual Build Professional > [VBP] General Discussion

Reply
 
Thread Tools Rate Thread Display Modes
  #1  
Old 08-30-2006, 11:48 AM
ASolovey ASolovey is online now
Registered User
 
Join Date: 05-25-2005
Posts: 13
Question VB6: Slashes in the macro disappeared

Hi,

I had VB5x. There is a macro in my globals:

<macro>
<name>RC_OPTS</name>
<description>options for resource compiler to make version info in C++ native projects</description>
<envvar type='11'>-1</envvar>
<value>/dFILE_VERSION_BIN=%FILE_VERSION_BIN% /dPRODUCT_VERSION_BIN=%PRODUCT_VERSION_BIN% /dFILE_VERSION=\"%FILE_VERSION_BIN%\" /dPRODUCT_NAME=\""%PRODUCT_NAME%"\" /dPRODUCT_VERSION=\"%PRODUCT_VERSION_BIN%\"</value>
</macro>

This macro assembles command line for resource compiler from few other macros.

This is how result looked like in VB5x:

/dFILE_VERSION_BIN=2,4,0,6 /dPRODUCT_VERSION_BIN=2,4,0,6 /dFILE_VERSION=\"2,4,0,6\" /dPRODUCT_NAME=\""My Project"\" /dPRODUCT_VERSION=\"2,4,0,6\"

Everything was OK. Notice, that slashes were preserved.
Now I has installed VB6.

With the same globals it produces this:
/dFILE_VERSION_BIN=2,4,0,6 /dPRODUCT_VERSION_BIN=2,4,0,6 /dFILE_VERSION="2,4,0,6" /dPRODUCT_NAME=""My Project""

You can see that VB6 differently handles things like this:
/dPRODUCT_NAME=\""My Project"\",
specifically - \"". Slashes have disappeared.

Is it a bug? Side effect? Feature?

What should I specifiy in the macro in order to have the result look like this: \""My Project"\" (including slashes)?

Alex.
Reply With Quote
  #2  
Old 08-30-2006, 01:50 PM
kinook kinook is online now
Administrator
 
Join Date: 03-06-2001
Location: Colorado
Posts: 5,757
There is a bug when loading v5 global macro values containing the string \" in v6 -- it incorrectly strips the backslash character (it's related to logic needed when converting v3 macros, but it incorrectly processes v4/5 macros in this way too). If you have the original v5 .macros file or have not modified global macros in v6 yet, you can exit VBP and change the 2nd line

<macros>

in the .macros file to

<macros version="6">

Otherwise, just add the backslashes back in to the macro value in v6 to correct the problem.
Reply With Quote
Reply

Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



All times are GMT -5. The time now is 12:59 PM.


Copyright 1999-2019 Kinook Software, Inc.