Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 619
  • Last Modified:

32 Bit DLL's in a 64 Bit world (Windows 7)

I developed two applications with visual studio 2005.  The applications uses a ActiveX dll that is a 32bit DLL made with Visual Basic 6.

When I installed the applications on a windows 7 machine they would not run.

I found that in visual studio when I change the target processor from Any to x86 I was able to have my applications run just fine.

my question is,  what would it take to make the DLL work in a 64bit mode without rewriting the DLL.



0
wrmichael
Asked:
wrmichael
  • 6
  • 4
  • 2
2 Solutions
 
xoperatorCommented:
What you need to do is to compile your DLL in 64Bit mode in visual studio.

Go to build/configuration manager and select x64 in for your project.

The output (build) DLL will be compatible for x64 usage.
0
 
wrmichaelAuthor Commented:
The DLL was written in Visual Basic 6 (SP6).


0
 
grayeCommented:
Yikes...  VB6 can not create a 64-bit DLL
So, that leave two choices...   keep the application as an x86 assembly... or rewrite the DLL in some other language.
sorry...
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
wrmichaelAuthor Commented:
I don't like what I am hearing.   I'm going to close my eyes and come back and see if something different appears!

I was hoping for some interoperability option or compiler configuration.

0
 
xoperatorCommented:
No man, sorry, there is no way to do it. Just as i said, you can offcourse go to the build/configuration in visual studio 2005/2008 and change to x64, but this way you will have to rewrite your DLL to fit those environments.

I think there is nothing to discuss here anymore, please mark this question as resolved and give us some points :)

Thanks a lot.
0
 
wrmichaelAuthor Commented:
I love to give out points......    but I'm going to keep it open for a little while longer and see if anyone else has any ideas that are out of the box so to speak.

The component takes care of encryption and I think the last time I tried to convert it to .Net it broke.   Instead of tackling down what was wrong with the math I turned the class into a DLL.


0
 
xoperatorCommented:
Do you use so special encryption ? Because if you dont you can simply use some othe encryption libraries already written under .Net.

There are few encryption algorithms who represents the core elements of each encryption engine, all them have a c# implementation. Its not a big deal to rewrite your VB6 component by using the exactly same Interface and inserting the .Net encryption implementation to it.

Please ask if anything inst clear.
0
 
wrmichaelAuthor Commented:
I could go that route,  but I need the application to be able to read older files that have already been encrypted with this library.

It is just a Blow fish library.

I am not sure what happens in the .net conversion but I suspect some variable size changed and the precision is rounded differently (or not at all)...  but I'm not 100% sure.

I suppose since no other option is going to present itself I'll have to convert it and start walking through the code.
0
 
xoperatorCommented:
Yep, go ahead, talk to me if you need any help.
0
 
grayeCommented:
I've got an encrypiton article that you might find interesting... the downloadable VB.Net sample uses DES rather than blowfish, but the concepts are the same.
http://www.emmet-gray.com/Articles/Encryption.htm 
0
 
wrmichaelAuthor Commented:
0
 
wrmichaelAuthor Commented:
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 6
  • 4
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now