473,657 Members | 2,652 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Moving MFC ext DLLs to .NET

I'm trying to move a portion of our application to .NET from VC6 - the
idea was to let most of the older DLLs still be compiled with VC6. As
a
first step just opened the project with VC7, and leaving everything
unmanaged, just tried to get a build.

After fixing some compile problems, we ran into problems linking with
DLLs
that were MFC dependent. (something to do with CString-s that are
templates
in VC7). Is the only way to recompile these dependencies with VC7? I
attempted this, but there were some compiler errors which I'm still
trying
to figure out. Also, will these recompiled versions be backward
compatible with VC6 compiled apps?

I couldn't find anything on MSDN. Searched on these newgroups found
that I wasn't the only one having problems - there were some replies
that mention
something about linking MFC statically, etc.

Any experiences/pointers would be greatly appreciated...

Thanks,
Nov 16 '05 #1
1 1360
Thanks...

"Carl Daniel [VC++ MVP]" <cp******@nospa m.mvps.org> wrote in message news:<eh******* ******@TK2MSFTN GP12.phx.gbl>.. .
Ramanujam R wrote:
I'm trying to move a portion of our application to .NET from VC6 - the
idea was to let most of the older DLLs still be compiled with VC6. As
a
first step just opened the project with VC7, and leaving everything
unmanaged, just tried to get a build.

After fixing some compile problems, we ran into problems linking with
DLLs
that were MFC dependent. (something to do with CString-s that are
templates
in VC7). Is the only way to recompile these dependencies with VC7?


Yes.
I
attempted this, but there were some compiler errors which I'm still
trying
to figure out. Also, will these recompiled versions be backward
compatible with VC6 compiled apps?


No. VC6 MFC and VC7 MFC don't mix.

I couldn't find anything on MSDN. Searched on these newgroups found
that I wasn't the only one having problems - there were some replies
that mention
something about linking MFC statically, etc.

Any experiences/pointers would be greatly appreciated...


If you need to mix VC6 and VC7-compiled DLLs in a single process, you need
to be very careful about your DLL interfaces. Generally, any interface
which includes MFC, ATL or STL classes will not be compatible. An interface
that uses your own classes exclusively will probably be compatible, but you
also need to be sensitive about runtime library differences: There's no way
to get a VC6 DLL and a VC7 DLL to share a single runtime heap, so it's
essential that your DLLs expose "complete" resource management interfaces,
with both allocation and deallocation for all objects that cross the DLL
boundary.

-cd

Nov 16 '05 #2

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

Similar topics

2
2846
by: Johann Blake | last post by:
I can hardly believe I'm the first one to report this, but having gone through the newsgroup, it appears that way. I would like to open a solution in the VS.NET IDE that consists of multiple DLLs and a test application (an .EXE). The .EXE is my startup application. All the DLLs are shared components. This means that they contain a key and are stored in the GAC. When I go to run the test application in the IDE, it will not execute...
11
2285
by: Devender Khari | last post by:
Hi Friends, I'm facing a situation as follows, need help on identifying possible issues. There is an MFC application developed in VC6.0, say ABCVC6.exe and another developed in VC.NET, say DEFVCNET.exe. There are a few DLLs that are to be used by these applications. All these DLLs are originally developed in VC6.0 but some of them are now migrated to VC.NET. So, let's say we have PQRVC6.dll and XYZVCNET.dll.
0
3221
by: ZMan | last post by:
Scenario: This is about debugging server side scripts that make calls to middle-tier business DLLs. The server side scripts are legacy ASP 3.0 pages, and the DLLs are managed DLLs converted/developed with VB.NET. What I want from debugging is to be able to step into the methods in the DLLs called from ASP scripts using Visual Studio .NET. Background: For typical script debugging issues, you can read and follow the two documents on...
3
1464
by: Jeremy S | last post by:
I wrote an ASP.NET application and pretty much separated out various layers of functionality into individual class files (e.g., dal.cs for all db access). It's currently all in one VS.NET project and gets compiled into one dll. I want to re-use some of the classes in other projects - so what all do I need to do to get these classes into their own dll? I presume that they will go into their own VS.NET project - but I've held off on doing...
5
1423
by: Tom | last post by:
We have an ASP web site done with VB.NET. This website is also checked into SourceSafe. Now we need to move/copy this web site over to a different server - a QA and/or Production server. I am not sure exactly how to do this.... Is there a 'copy' utililty anywhere in .NET or IIS? Do we copy it manually (which files, then)? Do we need to first create a virtual directory and then copy the files from the old directory/server to the new one?...
9
3091
by: axs221 | last post by:
I am trying to move some of our large VBA Access front-end file into ActiveX DLL files. I created two DLL files so far, one was a module that contains code to integrate into the QuickBooks accounting software. Another has general utilities. I tried referencing the utilities dll, and it shows up in the object explorer. I instantiated an instance of the class and now it shows up all okay in the Intellisense. Whenever I try to run a simple...
1
1079
by: Claire | last post by:
For localization, I create resx files containing stringlists. I have several in my project, attached to individual projects/dlls Since moving across my application doesnt seem to be able to find the resources I've attached. Is there any way I can find them so I can check they're named ok? thanks
2
6554
by: David Thielen | last post by:
So we have moved our app from .NET version 2.X in IIS6 to a Windows 2008 Server running IIS7. We have copied all files to the Windwardreports\apps directory and that apps directory has been converted to an application running in ..NET 2.X and Integrated mode. We copied over the DB and edited the web.config file to the DB username and password. I also added the NETWORK SERVICE user to the DB.
1
1887
by: samercontrol | last post by:
i have two problems 1-moving files between servers or downloading file to your site root(ASP). 2-registering dll or ocx at server without getting the no permission problem.
0
8392
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, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
8305
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 effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
8825
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
1
8503
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
8605
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
5632
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 then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
4151
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 last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
2
1953
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
2
1611
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

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.