Wednesday, November 7, 2007 - 2:39 PM
398g

Importing and Using Com-Based Co Compliant Unit Operations in Usepa Metal Finishing Pollution Prevention Tool

William M. Barrett Jr., National Risk Management Research Laboratory, US Environamental Protection Agency, Cincinnati, OH 45268 and Svetlana Strunjaš-Yoshikawa, Computer Science, University of Cincinnati, Cincinnati, OH 45221.

In this presentation interoperability issues between .NET-based US Environmental Protection Agency's Metal Finishing Pollution Prevention Tool (USEPA MFP2T) and CAPE-OPEN compliant, COM-based unit operations will be discussed. USEPA MFP2T is a sequential modular process simulator, built upon CAPE-OPEN interfaces using .NET framework. The CAPE-OPEN interfaces that are used in the simulator are imported from CAPE-OPEN COM type libraries. USEPA MFP2T is created using Microsoft Visual Studio C++ 2005.

In order for USEPA MFP2T to import and use CAPE-OPEN compliant COM-based unit operations, it is of a crucial importance to enable interaction and interoperation between this .NET-based application and COM-based components. The most common way for using COM objects from .NET applications is through a runtime callable wrapper (RCW), which enables a .NET client to access to a COM server. The RCW wraps COM objects and mediates between them and .NET common language runtime (CLR) environment, making the COM objects appear to .NET clients just as if they were native .NET objects, and making the .NET clients appear to the COM objects just as if they were standard COM clients. USEPA MFP2T contains .NET wrappers that enable import and use of COM-based, CAPE-OPEN compliant unit operations inside and these wrappers will be explained in details in this presentation.

Functionality of the .NET wrappers mentioned above is successfully tested by importing and using some COM-based unit operations from COCO simulator and results will be shown in this presentation.