Распределенные вычисления и технологии Inprise

Создание переносимого клиентского приложения


Теперь создадим клиентское приложение, переносимое на другие платформы. Это должно быть консольное приложение, не использующее VCL. В этом случае при создании клиента мы должны выбрать опцию "Console Application" и отменить опцию "Enable VCL" .

Все остальные действия похожи на предыдущие, за исключением создания пользовательского интерфейса. Простейший способ создания пользовательского интерфейса в данном случае - вывести результаты расчетов на экран и поместить этот код непостредственно в файл проекта:

//---------------------------------------------------------------------------

#include <corbapch.h> #pragma hdrstop

//--------------------------------------------------------------------------- #include "fun1_c.hh"

#include <corba.h> #include <condefs.h> USEIDL("corba\corba_rus\fun1.idl"); USEUNIT("corba\corba_rus\fun1_c.cpp"); USEUNIT("corba\corba_rus\fun1_s.cpp"); //--------------------------------------------------------------------------- #pragma argsused int main(int argc, char* argv[]) { try { // Initialize the ORB and BOA CORBA::ORB_var orb = CORBA::ORB_init(argc, argv); CORBA::BOA_var boa = orb->BOA_init(argc, argv); a1_var a1_1 = a1::_bind("a1Obj");

cout<<"Our function table \n"; int i; double x1,y; for (i=1;i<271;i++) { x1=0.1*float(i); y=a1_1->fun1(x1); cout<<x1<<" "<<y<<"\n"; }

} catch(const CORBA::Exception& e) { cerr << e << endl; return(1); } return 0; } //---------------------------------------------------------------------------

В этом случае мы получим таблицу с результатами расчетов непосредственно на экране консольного приложения.

Отметим, что данное приложение можно скомпилировать любым компилятором С++, в том числе и компилятором для платформы, отличной от Windows.



Содержание раздела