473,434 Members | 1,430 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,434 software developers and data experts.

Delphi coded DLL, read by .NET Web Service?

Dear List,

We have a large application written in Delphi. I am writing a mobile app
written in .NET (C#) which reads and writes into the Delphi applications
Oracle database via a .NET Web Service. Much of the data centred
functionality on the application is quite involved, and to re-write all this
functionality in the .NET web service would be very time consuming. Our idea
is to perhaps develop a DLL written in Delphi, which copies across all
required code from the main application. The .NET web service would then load
and run this DLL as and when required, merely passing parameters in and out
etc...

Does anyone know if it is possible for a .NET Web Service to use a Delphi
written DLL?

Thanks for any tips,

D
Oct 29 '07 #1
4 4068
=?Utf-8?B?ZGF2ZWJ5dGhlc2Vh?= <da**********@discussions.microsoft.com>
wrote in news:A8**********************************@microsof t.com:
Our idea is to perhaps develop a DLL written in
Delphi, which copies across all required code from the main
application. The .NET web service would then load and run this DLL as
and when required, merely passing parameters in and out etc...
Surely there must be an easier way?

Perhaps you can use RemObjects SDK?

http://www.remobjects.com/product/?id={5B241E66-7BAE-4D46-B2BA-
03EB9DC5229D}

Remobjects can expose your Delphi application as a remoting service or web
service. This would make communicating with .NET much easier.
Does anyone know if it is possible for a .NET Web Service to use a
Delphi written DLL?
I believe it is possible using DLLImports... but you'll get into a lot of
Interop and unmanaged code. Not something you want to consider lightly.

Or perhaps you can wrap the DLL as a COM object and it'll be much easier to
call in .NET.
Oct 30 '07 #2
Hi,

Thanks for the reply. I think its going to be a more tricky task than I
first thought, mmh, it might require a re-think. I'll definetly look into the
COM option. The RemObjects library looks good, its whether or not we want to
spend more cash on something. anyway, time will tell..

Cheers,
David

Our idea is to perhaps develop a DLL written in
Delphi, which copies across all required code from the main
application. The .NET web service would then load and run this DLL as
and when required, merely passing parameters in and out etc...

Surely there must be an easier way?

Perhaps you can use RemObjects SDK?

http://www.remobjects.com/product/?id={5B241E66-7BAE-4D46-B2BA-
03EB9DC5229D}

Remobjects can expose your Delphi application as a remoting service or web
service. This would make communicating with .NET much easier.
Does anyone know if it is possible for a .NET Web Service to use a
Delphi written DLL?

I believe it is possible using DLLImports... but you'll get into a lot of
Interop and unmanaged code. Not something you want to consider lightly.

Or perhaps you can wrap the DLL as a COM object and it'll be much easier to
call in .NET.
Oct 30 '07 #3
The .NET web service would then load and run this DLL as and when
required, merely passing parameters in and out etc...
Sure. There are several viable ways to get the functionality you want.

Delphi can create standard Win32 dlls. You can package your code in those
which C# can call fine. Check out http://www.pinvoke.net/. They have tons
of examples of calling win32 dlls from .Net. I haven't built a dll in
Delphi in years, but if I recall correctly, it was pretty easy. There
should be tons of examples online.

Delphi can also create COM objects. Once that is created it's pretty easy
to add it as a reference in c# and have visual studio create a wrapper
class for accessing the object. I built quite a few COM objects in Delphi a
few years back. It was a pretty painless process as Delphi 6 & 7 had
wizards to do the heavy lifting for you.

I probably shouldn't say this on a Microsoft newsgroup. If the majority of
your application is built in Delphi you should really consider building the
..Net piece in Delphi for .Net instead of C#. All .Net languages compile
down to the CIL so from a .Net standpoint it doesn't matter what language
you use. It should be noted that you'll still need to use one of the
methods I described above for the interop issue. I merely recommend it as
an option so that you can have consistency across your application. It will
make it easier to move team members around and ongoing maintenance.

--
Andrew Faust
andrew[at]andrewfaust.com
http://www.andrewfaust.com
"davebythesea" <da**********@discussions.microsoft.comwrote in message
news:A8**********************************@microsof t.com...
Dear List,

We have a large application written in Delphi. I am writing a mobile app
written in .NET (C#) which reads and writes into the Delphi applications
Oracle database via a .NET Web Service. Much of the data centred
functionality on the application is quite involved, and to re-write all
this
functionality in the .NET web service would be very time consuming. Our
idea
is to perhaps develop a DLL written in Delphi, which copies across all
required code from the main application. The .NET web service would then
load
and run this DLL as and when required, merely passing parameters in and
out
etc...

Does anyone know if it is possible for a .NET Web Service to use a Delphi
written DLL?

Thanks for any tips,

D
Oct 31 '07 #4
Hi Andrew,

Thanks for the information - that was all very useful!

I didnt realise you could code .NET Web Services in Delphi, that may provide
the solution for us. Interesting about the DLL's. I also suspected that
surely a Win32 DLL was independent of what programming language was used to
create it. I reckon I will try this out with a simple example and see how it
goes.

Thanks again,
David

The .NET web service would then load and run this DLL as and when
required, merely passing parameters in and out etc...

Sure. There are several viable ways to get the functionality you want.

Delphi can create standard Win32 dlls. You can package your code in those
which C# can call fine. Check out http://www.pinvoke.net/. They have tons
of examples of calling win32 dlls from .Net. I haven't built a dll in
Delphi in years, but if I recall correctly, it was pretty easy. There
should be tons of examples online.

Delphi can also create COM objects. Once that is created it's pretty easy
to add it as a reference in c# and have visual studio create a wrapper
class for accessing the object. I built quite a few COM objects in Delphi a
few years back. It was a pretty painless process as Delphi 6 & 7 had
wizards to do the heavy lifting for you.

I probably shouldn't say this on a Microsoft newsgroup. If the majority of
your application is built in Delphi you should really consider building the
.Net piece in Delphi for .Net instead of C#. All .Net languages compile
down to the CIL so from a .Net standpoint it doesn't matter what language
you use. It should be noted that you'll still need to use one of the
methods I described above for the interop issue. I merely recommend it as
an option so that you can have consistency across your application. It will
make it easier to move team members around and ongoing maintenance.

--
Andrew Faust
andrew[at]andrewfaust.com
http://www.andrewfaust.com
"davebythesea" <da**********@discussions.microsoft.comwrote in message
news:A8**********************************@microsof t.com...
Dear List,

We have a large application written in Delphi. I am writing a mobile app
written in .NET (C#) which reads and writes into the Delphi applications
Oracle database via a .NET Web Service. Much of the data centred
functionality on the application is quite involved, and to re-write all
this
functionality in the .NET web service would be very time consuming. Our
idea
is to perhaps develop a DLL written in Delphi, which copies across all
required code from the main application. The .NET web service would then
load
and run this DLL as and when required, merely passing parameters in and
out
etc...

Does anyone know if it is possible for a .NET Web Service to use a Delphi
written DLL?

Thanks for any tips,

D
Nov 1 '07 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

13
by: lukeharpin | last post by:
Hi World, We have been developing Engineering software in Delphi 3,4,5,6,7 for a few years now. This morning we had a discussion about OOP and re-programming the software to which the question...
0
by: Alex | last post by:
I have wse enabled service on a server and making Delphi application using SOAP to access this service. I stuck with WSE security...always getting error like ...
0
by: Tomek | last post by:
Welcome. I`m trying to prepere some project that shows how to use Corba technology i heterogenic systems.I`d like to create CORBA server with Borland Delphi (or C#.NET) and few client...
5
by: Dinesh Kumar | last post by:
Hi all I am using VB.NET for a Connector dll in Delphi client and some webservice . can you tell me how to handle pointers in Vb.net which are passed by delphi client as parameters in function...
2
by: xpanta | last post by:
Hi, I would like to know what (if possible) is the best way for a java-coded client to communicate with a Delphi-coded server. I am actually to create a JSP <-> JBean <->Delphi Server <->...
0
by: epoch | last post by:
hi. my problem is: there is a web service running on the network. i wrote a windows service in delphi. i want to call a dll or com+ from this windows service. and this windows service is going...
1
by: Thomas Due | last post by:
Hi, I manage an rather old application in which we have some fairly complex (ugly) Delphi code. This is Delphi 6 we're talking about. Among all this Delphi code there is method for formating a...
11
by: gnuist006 | last post by:
Is there a Delphi equivalent in the C world or Scheme/LISP world ? Recently, Delphi is in resurgence. In Russia people are using like crazy. For example, Bolega has written a free image...
0
by: BornTOCode | last post by:
Hello, I am attempting to call a (Delphi) win32 DLL from a Delphi.Net webservice. I am using a slightly modified version of the hello world webservice that comes with Delphi 2006. The DLL...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...
0
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The...
0
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.