[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4688: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4690: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4691: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4692: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3823)
CAPE-OPEN • View topic - Developing an own cpp/ .NET Unit Operation
Page 1 of 1

Developing an own cpp/ .NET Unit Operation

PostPosted: 17 July 2020, 13:45
by CSchirmer
Hello,
I'm a real beginner in developing .NET projects (but I think I'm not the only process engineer with this problem), so don't be surprised if my questions are very simple.
My task is to develop an own unit operation and I started with the cppMixerSplitterExample from the CoLan website as a base. I have edit the calculation method to my needs and added some classes, that I need for the calculation. I also started changing the Editdialog class. Now I want to test the unit Operation within COFE. What additional changes do I have to make in the example and what steps are neccessary for including it into COFE?
I am grateful for any kind of help!

Christoph

Re: Developing an own cpp/ .NET Unit Operation

PostPosted: 21 July 2020, 09:06
by jasper
The CPP mixer splitter example of course is not a .NET unit operation. If your unit operation does not show up in COFE, you probably have not registered the DLL yet. The COM object must be visible to PMEs (including COFE) and for this you must put the information into the registry. Most COM DLLs, including that of cppMixerSplitterExample, are self-registering through the DllRegisterServer and DllUnregisterServer entry points. You can invoke these using Windows' regsvr32 utility for example:

regsvr32 CPPMixerSplitterexample.dll

from a cmd prompt (you may need to start the command prompt with admin rights).

If you want to get started in .NET, here's a possible example:


Re: Developing an own cpp/ .NET Unit Operation

PostPosted: 19 August 2020, 14:50
by CSchirmer
Thank you for your answer Jasper!

I have successfully registered the Unit Operation and can use it in the 32 bit Version of COFE. Now I would like to set it up as a 64 bit Version, so can you give me some advice what to change in the registration an structure of my Unit Operation to use it as 64 bit?
Furthermore I would like to ask, if there is a comfortable way of getting intermediate results from calculation which is done. The Unit Operation isn't just straight forward calculating. Several steps of iteration have to be done. The intermediate results would help me validating the Unit Operation.

Best,
Christoph

Re: Developing an own cpp/ .NET Unit Operation

PostPosted: 19 August 2020, 18:39
by jasper
To run a 64 bit version, you will need to compile a 64 bit version first. Then register the 64 bit version and it should show up for 64 bit PMEs (I am presuming you are using C++ here, not .NET).

You could expose intermediate values via output parameters, or information ports, or via a report.