Conversion of VC++ ATL COM to .Net web service

G

Guest

We have an ATL COM server developed with VC++ 6.0 which acts a a server .
Then we have VB6 modules

Acting as clients and interfacing with the server .



We want to migrate the ATL COM server to .Net platform and host it as a web
service . The client modules

are can then be redeveloped in .Net if needed .



The existing COM server has around 5000 lines of code .





Please let us know if there is any direct conversion utility that converts
the ATL COM to .Net web service .

Can a layer be developed that can act as an interface to host the COM
application as a web service .



The intention is to avoid a line to line code conversion .



Please let us know the options .
 
R

Richard Grimes

Prashant said:
The existing COM server has around 5000 lines of code .

Please let us know if there is any direct conversion utility that
converts the ATL COM to .Net web service .

Not really. ATL Server handles web services in a totally different way
to how .NET implement them. (For a start ATL attributes are
compile-time, whereas .NET attributes are run-time.) If the ATL Server
web service is well factored (ie you have an object that have web
service methods, and you do not do anything with the underlying ATL
Server plumbing, like caching) then you are a step closer. However,
converting unmanaged C++ to .NET is fraught with issues. The best thing
you can do is factor out the web methods into a C++ DLL and compile it
as unmanaged C++, and use platform invoke or managed C++ to access the
code. In the long term you should re-write the code for .NET.
Can a layer be developed that can act as an interface to host the COM
application as a web service .

Umm, yes, you can run the ATL Server web service as a web service and
write a .NET web service to access it via, umm, web services. Seriously,
this is a good solution because the original code is run in the
environment where it was designed and tested to run, and you will not
get the problems of ported code.
The intention is to avoid a line to line code conversion .

That would be a mistake in all cases, because there is no one-to-one
relationship between ATL Server and .NET

Richard
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top