Measurement Studio for VC++

cancel
Showing results for 
Search instead for 
Did you mean: 

How to create dll in Visual Studio 2008 in Visual C++

Hello,
I have insatlled Visual Studio 2008. I have to create DLL in Project
type Visual C++.
Which Template i have to select to reate dll, MFC DLL or Class
Library?.

I have to call or import this dll in Windows Forms Application. How
can i do this. Please give details procedure to do this.
0 Kudos
Message 1 of 5
(158,621 Views)
Hi Abhijit,

Since your question appears to be non-NI related, its probably best if you post on the MSDN forums in the future for these types of questions. If you are new to programming in C# or VB.NET, then you probably want to pick up a good .NET book that includes topics on .NET interop (i.e. managed code working with unmanaged APIs). However, with all that said, the basic list of steps you are going to follow is essentially
  1. Create some unmanaged C++ DLL in what type of C++ you want (MFC, Win32, etc)
  2. Choose your .NET language (C#, VB.NET, C++/CLI, etc)
  3. Use .NET's Platform Invoke (PInvoke) to make calls into this unmanaged DLL.

A couple of links that I have saved as my favorites that might help you out include:
Best Regards,
Jonathan N.
National Instruments
Message 2 of 5
(158,611 Views)

Hi Abhijit,

They will all work with your .NET application, but it depends what you want to do with them and how to interface with them. The Class Library is a .NET, managed DLL. The MFC DLL is an unmanaged DLL interfaced with the Microsoft Foundation Class Library - the predecessor to .NET in C++. Both are different technologies used to encapsulate the windows API. Lastly, a Win32 DLL is the most basic of DLLs - providing no encapsulation and typically used now for simple programming (such as no GUI or object oriented programming). Again, it all depends what you want to do with the DLL. For example, if you would like to create dialog boxes from within the DLL (not your application), then you would use the MFC or Class Library DLLs. However, since you will be using the DLL in a .NET application, I would stick to Class Library to make life a lot easier. Be forewarned that developing in managed C++ could be a daunting task.

If you however just want to do simple operations, such as processing data, then go with Win32 DLLs. They can easily be imported to a .NET language (VB/C#) by using the DllImport() function.

Hope this helps Abhijit!

For examples, simply do a search for creating DLLs and you will get tons of information.
Here are just a few:

DLL Tutorial Part I: MFC DLL Basics
http://www.dotnetheaven.com/Uploadfile/mahesh/DLLBasicsPart105192005020909AM/DLLBasicsPart1.aspx?Art...

CodeProject: Win32 vs MFC
http://www.codeproject.com/KB/cpp/mfc_architecture.aspx

Step by Step: Calling C++ DLLs from VC++ and VB - Part 1
http://www.codeproject.com/KB/DLL/XDllPt1.aspx

Creation of a Simple DLL
http://www.codeproject.com/KB/DLL/dll.aspx

Nestor
0 Kudos
Message 3 of 5
(158,606 Views)

Dear Sir:

 I succeeded in making DLL functions and implemented on my projects by using Visual C++ 5.0 or 6.0.  This was a very easy job.  I challenged the creation of DLL functions by using Visual Studio 2008.  I tried to create in the same way as the creation of DLL's by VC++ 6.0, but I failed.  I need step-by-step instructions of how to create DLL's by Visual Studio 2008.  Please help me.

 I appreciate your kind help.

 

0 Kudos
Message 4 of 5
(113,979 Views)

Just build a completely example in Visual 2010, hope it will be help.

The DLL is created in c++, then call it from C#.

 

0 Kudos
Message 5 of 5
(55,889 Views)