For you developers who want to totaly masterise there developments in C/C++.
It's a very huge project, in tree parts, hard to take in hands but if you do so, you will be able to mastrerise all your source codes.
- PM mean Protocol or Protable Machinery for multiplatform development.
- AS is for AbyreSoft the beginnings of SoDevLog.
- Masterise your code for multi-plateform development in C/C++
- Driven by console in a smart menu system
- Powerfull functions for memory management
Fully portable core software in C language so you can pickup some C sources to another plateform.
Any IDE that can make a reference to a library. Here it's Visual Studio Community but there are many exemples of porting the solution under Eclipse for Linux.
- Generate generation is required
- ASDLLTrace the Communication DLL between your code and the Reporter
- ASReporter or Reporter is a windows application that display traces
- PMLiteC code adapted to your platform for Traces communication
- PMLite more tests in language C
- ConsoleCPlusPlus your project under test using your code in C/C++
- Conclusion a new world opens in front of your eyes
I have wanted to bring to light this project for a long time. I wanted to do this so I could develop with Visual Studio Community to enhence my C++. That's it.
Here is a dedicated blog to Trace Reporter:
Another GitHub project with a Console MinGW and the TraceReporter that can help:
A modern MFC Project in C++ that use the Trace Reporter:
One day I made it, I rebuilding this project with Visual Studio Community 2019. I unearthed it from a very old computer for an IoT project that I had to develop.
For my notes:
\Mabyre\Visual Studio\CPlusPlus\ConsoleCPlusPlusStarterKit\PMLiteC\PMLitec\Wrk6\PMLiteC
Exhumation of a very old project Protocol Machinery Lite from :
\Oracle Virtual Box\Windows 7 Ineo 000\Partage\Visual C++ 6.0\Console
From a very old computer named: \Mabyre\SouthOfFrance\Visual C++ 6.0
Now it's ready for thousands of years.
- Clone the repository
⚠️ If you directly open the ConsoleCPlusPlus.sln and run, it will not work.
- Generate ASDLLTrace
First of all generate ASDLLTrace, open the first solution ASTrace.sln
Verify you are well in configuration Debug x86 right-click on the project ASTrace:
Choose Generate:
Open the second solution ConsoleCPlusPlus.sln
Inside you have two projects, it's your code under test with ConsoleCPlusPlus and PMLiteC
First of all verify you are in configuration Debug x86:
- Generate PMLiteC
- Generate ConsoleCPlusPlus
You are now ready to develop your source code in ConsoleCplusPlus and make Traces to the Reporter.
- Run your project
First of All run the Reporter:
Click On Reporter.exe you will find in directory \ASReporter\Release\
The reporter is now listening to traces coming from your application.
Have a look to the "Tip of the day" : The Reporer can also receive on your desktop traces emited by your application running at one of your client Office during Beta-Testing stage. This imrpoves greatly bugs tracking.
At each time you will need to execute the Reporter before your project therefor the Reporter will listen on sockets to Traces that may come in.
The communication DLL for Traces using socket TCP/IP, used by the Reporter and your project to emite Traces.
Sources Code: ASDLLTrace
The application that display Traces in a non-MFC windows application
Sources Code: ASReporter
More Tests in language C
Sources Code: PMLite
The Protocole Machinery adapted to your project
Sources Code: PMLiteC
Your project, your code under tests under Traces
Once you will run your project you can get the following result :
Sources Code: ConsoleCPlusPlus
I hope that you will open this new world in front of you, this world of development in C and C++ language appeased by the total control of your sources code.
Indeed the TraceReporter allows you to develop in a serene way by adding a total control of the functionalities that you develop.
The tracing system by recording the traces allows you to do non-regression simply by including the results files you will realize your errors:
Samples in C:
Last thing, have a look to the source code you can find here. This one is to test your machine byte ordering depending on the type platform you are running on: LITTLE INDIAN or BIG INDIAN:
Have fun and don't forget it's only software!