ARES Commander provides a C++ plugin which allows lets you to create third party Plugin Software for ARES Commander.
The CFx examples are in the following folder: \ARES Commander 20** SDK\Samples\CFx\. Open the solution file CFxSamples.sln .
Follow the steps described in “How to Create a Sample C++ plugin and build,load the plugin ”.
- Add a new C++ project(Empty project) using visual studio 2015 as SampleCommand in ‘\ARES Commander 20** SDK\Samples\CFx’
...
1. SampleCommand.h - Create Creates the SampleCommand class with global and local command names
...
2. SampleCommandModule.h - Create Creates a new module for the SampleCommand class with InitApp, uninitapp, and object to represent the command
...
#include <RxModule.h>
#include <StaticRxObject.h>
#include "SampleCommand.h"
/** Description:
Creates a new module for Sample command.
*/
class CHelloCommandModule : public OdRxModule
{
public:
~CHelloCommandModule() {}
protected:
CHelloCommandModule() {}
/** Description:
Adds new command to the current module.
*/
virtual void initApp();
/** Description:
Removes command from the current module.
*/
virtual void uninitApp();
private:
/** Description:
Object from type sampleCommand is created. It represents the new command.
*/
OdStaticRxObject<SampleCommand> m_SampleCommand;
};
3. stdafx.h - File to include Includes all the standard system include files/project specific include files that are frequently used
...
1.SampleCommand.cpp - C++ file to create for creating commands that you can be called call from ARES commander
#include "stdafx.h"
#include "SampleCommand.h"
#include "FxSystemServices.h"
SampleCommand::SampleCommand(void)
{
GetFxSystemServices()->WriteLine(L"HI, This is a Sample command.");
}
SampleCommand::~SampleCommand(void)
{
}
const OdString SampleCommand::globalName() const
{
// global command name to be called
return("MYSAMPLE");
}
const OdString SampleCommand::localName() const
{
// local command name to be called
return("MYSAMPLE");
}
...
4. stdafx.cpp - Source file that includes just the standard includes include files
#include "stdafx.h"
Now for Do the following settings to make the C++ sample plugin to work certain configurations has to be done.
- Open SampleCommand property pProperty Page and set Configuration → Release and Platform→ choose do the following settings:
In Configuration: Release
In Platform: Choose the appropriate platform (in this example, it is x64). - Specify Additional Include and Library Directories - Need to include : Include Libraries and Include files from ARES SDK folder.
...
- Additional Dependencies: Linking Link appropriate libraries that implement ARES Commander plugin API. Libraries Libraries are located on your drive,
in \Program Files\Graebert GmbH\ARES Commander 20** SDK\Libraries\dd_lib
...
- Change extension of output and other properties as shown in the image below image
The name of the shared library containing the subclass of OdRxModule , should be named according to the rule: < application name >.tx.
...
- Open SampleCommand property page and set C/C++ → Language → Treat WChar_t As Built in Type to No (/Zc:wchar_t-)
Go Nvigate to the C:\Program Files\Graebert GmbH\ARES Commander 20**\BIN and find the files named TD_Db_*.dll;
In our example, it the file name is named TD_Db_4.03_14.dll. You must add Add the suffix _4.03_14 suffix to your output .dll name to make load it load normally.
- Build the SampleCommand project and , then Open ARES Commander and use the APPLOAD command to load your application:
In our example, we have SampleCommand_4.03_14.tx as result.
...