madExcept patched wrong binary file in multi-project group
Posted: Fri Aug 20, 2010 8:01 am
[madExcept patched wrong binary file in multi-project project group of C++Builder 2010]
I upgrade my C++Builder from 2006 to 2010 today and I noticed that in a project group containing multiple projects, if you build a project without first activate the project first, madExcept will patch wrong binary file. (madExcept will try to patch the binary file from the active project.)
If the wrong binary file is already there, you will not get any warning/error message, but actually the new built binary file is not patched.
This caused me a lot of trouble since my project group contains many projects using madExcept, now I cannot use ‘Build All Projects’ command anymore and have to activate and build projects one by one and is very time consuming.
For example:
1. create a project group containing two projects Project1.exe and Project2.exe
2. execute ‘Clean’ command on Project1.exe
3. double click Project1.exe to set it as active project
4. right click project2.exe and execute ‘Build’ command
You will get the following message from madExcept:
[madExcept] Project1.cpp: Binary not found!
And here is the content in madExceptWizard.txt:
15:32:44-406 ActiveProjectChanged: "F:\Test\Project1.cbproj"
15:32:44-453 ActiveProjectChanged: "F:\Test\Project2.cbproj"
15:32:44-453 ActiveProjectChanged: "F:\Test\Project1.cbproj"
15:32:48-500 BeforeCompile event, isCodeInsight: -
15:32:48-500 [0] module "F:\Test\Unit1.cpp"
15:32:48-500 [1] project group
15:32:48-500 [0] project "F:\Test\Project1.cbproj"; moduleEditor[0]: "F:\Test\Project1.cpp"
15:32:48-500 [1] project "F:\Test\Project2.cbproj"; moduleEditor[0]: "F:\Test\Project2.cpp"
15:32:48-500 New project detected: "F:\Test\Project1.cpp"
15:32:48-500 SetDefaultSettings
15:32:48-500 LoadDefaultSettings:
15:32:48-500 LoadSettingsFromIni(F:\Test\Project1):
[deleted]
15:32:48-640 New project detected: "F:\Test\Project2.cpp"
15:32:48-640 SetDefaultSettings
15:32:48-640 LoadDefaultSettings:
15:32:48-640 LoadSettingsFromIni(F:\Test\Project2):
[deleted]
15:32:48-718 Project closed: "F:\Test\Project2.cbproj"
15:32:48-718 Project closed: "F:\Test\Project1.cpp"
15:32:48-718 BeforeCompile
15:32:48-718 the project file is alright (madListModules)
15:32:48-718 the project file is alright (madListProcesses)
15:32:48-734 the project file is alright (madListHardware)
15:32:48-734 the project file is alright (madIWSupport)
15:32:48-734 the project file is alright (madScreenShot)
15:32:48-734 the project file is alright (madLinkDisAsm)
15:32:48-734 the project file is alright (madExcept)
15:32:51-343 AfterCompile event, succeeded: +, isCodeInsight: -
15:32:51-343 [0] module "F:\Test\Unit1.cpp"
15:32:51-343 [1] project group
15:32:51-343 [0] project "F:\Test\Project1.cbproj"; moduleEditor[0]: "F:\Test\Project1.cpp"
15:32:51-343 [1] project "F:\Test\Project2.cbproj"; moduleEditor[0]: "F:\Test\Project2.cpp"
15:32:51-343 AfterCompile, succeeded: +
15:32:51-343 root: "F:\Test\Project1"
15:32:51-343 isDpk: -
15:32:51-343 binary: "F:\Test\Debug\Project1.exe"
15:32:51-343 map file: "F:\Test\Debug\Project1.map"
15:32:51-343 warning "Binary not found!"
15:32:51-343 AfterCompile done
I already tried version 2.6.0.0 and the latest beta and results are all the same.
I upgrade my C++Builder from 2006 to 2010 today and I noticed that in a project group containing multiple projects, if you build a project without first activate the project first, madExcept will patch wrong binary file. (madExcept will try to patch the binary file from the active project.)
If the wrong binary file is already there, you will not get any warning/error message, but actually the new built binary file is not patched.
This caused me a lot of trouble since my project group contains many projects using madExcept, now I cannot use ‘Build All Projects’ command anymore and have to activate and build projects one by one and is very time consuming.
For example:
1. create a project group containing two projects Project1.exe and Project2.exe
2. execute ‘Clean’ command on Project1.exe
3. double click Project1.exe to set it as active project
4. right click project2.exe and execute ‘Build’ command
You will get the following message from madExcept:
[madExcept] Project1.cpp: Binary not found!
And here is the content in madExceptWizard.txt:
15:32:44-406 ActiveProjectChanged: "F:\Test\Project1.cbproj"
15:32:44-453 ActiveProjectChanged: "F:\Test\Project2.cbproj"
15:32:44-453 ActiveProjectChanged: "F:\Test\Project1.cbproj"
15:32:48-500 BeforeCompile event, isCodeInsight: -
15:32:48-500 [0] module "F:\Test\Unit1.cpp"
15:32:48-500 [1] project group
15:32:48-500 [0] project "F:\Test\Project1.cbproj"; moduleEditor[0]: "F:\Test\Project1.cpp"
15:32:48-500 [1] project "F:\Test\Project2.cbproj"; moduleEditor[0]: "F:\Test\Project2.cpp"
15:32:48-500 New project detected: "F:\Test\Project1.cpp"
15:32:48-500 SetDefaultSettings
15:32:48-500 LoadDefaultSettings:
15:32:48-500 LoadSettingsFromIni(F:\Test\Project1):
[deleted]
15:32:48-640 New project detected: "F:\Test\Project2.cpp"
15:32:48-640 SetDefaultSettings
15:32:48-640 LoadDefaultSettings:
15:32:48-640 LoadSettingsFromIni(F:\Test\Project2):
[deleted]
15:32:48-718 Project closed: "F:\Test\Project2.cbproj"
15:32:48-718 Project closed: "F:\Test\Project1.cpp"
15:32:48-718 BeforeCompile
15:32:48-718 the project file is alright (madListModules)
15:32:48-718 the project file is alright (madListProcesses)
15:32:48-734 the project file is alright (madListHardware)
15:32:48-734 the project file is alright (madIWSupport)
15:32:48-734 the project file is alright (madScreenShot)
15:32:48-734 the project file is alright (madLinkDisAsm)
15:32:48-734 the project file is alright (madExcept)
15:32:51-343 AfterCompile event, succeeded: +, isCodeInsight: -
15:32:51-343 [0] module "F:\Test\Unit1.cpp"
15:32:51-343 [1] project group
15:32:51-343 [0] project "F:\Test\Project1.cbproj"; moduleEditor[0]: "F:\Test\Project1.cpp"
15:32:51-343 [1] project "F:\Test\Project2.cbproj"; moduleEditor[0]: "F:\Test\Project2.cpp"
15:32:51-343 AfterCompile, succeeded: +
15:32:51-343 root: "F:\Test\Project1"
15:32:51-343 isDpk: -
15:32:51-343 binary: "F:\Test\Debug\Project1.exe"
15:32:51-343 map file: "F:\Test\Debug\Project1.map"
15:32:51-343 warning "Binary not found!"
15:32:51-343 AfterCompile done
I already tried version 2.6.0.0 and the latest beta and results are all the same.