By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
424,854 Members | 1,883 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 424,854 IT Pros & Developers. It's quick & easy.

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

P: n/a
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 .

--
Prashant Shukla
Dec 29 '05 #1
Share this Question
Share on Google+
1 Reply


P: n/a
Prashant wrote:

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
--
Fusion Tutorial: http://www.grimes.demon.co.uk/workshops/fusionWS.htm
Security Tutorial:
http://www.grimes.demon.co.uk/workshops/securityWS.htm
Dec 31 '05 #2

This discussion thread is closed

Replies have been disabled for this discussion.