Callback C# from dynamically loaded C++ DLL

Cancelado Publicado Feb 15, 2007 Pagado a la entrega
Cancelado Pagado a la entrega

There is an article on TheCodeProject web site entitled: Calling Managed Code from Unmanaged Code and vice-versa By TarunNeo. This article talks about setting up callbacks to delegates in .Net programs from C++ DLLs. There are two things I need in addition to that. First, it's in Visual Basic .Net, and I want it in C#. This should be fairly easy. The second thing is harder. He loads the C++ DLL by importing it into the project: "Then in your VB.NET code, add a reference to this DLL using Add Reference->Projects (Browse to the DLL)." I need to dynamically load the C++ DLL at runtime using it's filename (or something equivalent) and still have it be able to call back delegates in the C# application and be able to have the C# call unmanaged functions in the DLL. I'm not sure how to go about this dynamic loading of the C++ DLLs in the context of setting up these callbacks. I don't mind if the unmanaged C++ DLLs are wrapped in managed C++ if you describe how to do that. What I need is just a little example program similar to the article, but with a dynamically loaded DLL, and written in C# rather than VB. I would also like to be able to call unmanaged functions in the C++ unmanaged DLL from C# after it's been dynamically loaded. So communication in both directions is necessary. The DLL does NOT need to call functions in the main program except through the callback mechanism. (No circular dependencies.) I also need a one page writeup about the methods used so that I can see how to extend it as necessary. (Obviously, you don't need to redocument the material already covered in the article.) When you are done, if you desire, you can post the project under your own name to TheCodeProject if you wish, or use the program for any other purposes you desire so long as it doesn't infringe my rights to use it any way I need to. -Kelly

## Deliverables

1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.

2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):

a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.

b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.

3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).

## Platform

The approach used should work in all versions of .Net The C++ DLL may use MFC, or not.

.NET Programación en C Programación en C# Ingeniería MySQL PHP Arquitectura de software Verificación de software Visual Basic

Nº del proyecto: #2841741

Sobre el proyecto

2 propuestas Proyecto remoto Activo Mar 7, 2007

2 freelancers están ofertando un promedio de $34 por este trabajo

vikask77

See private message.

$42.5 USD en 11 días
(6 comentarios)
2.7
jdoxsey

See private message.

$25.5 USD en 11 días
(1 comentario)
0.0