|
Dear All,
I have developed an Windows Application in VB.Net. This application user some other DLLs for its execution. When I use it on my machine which has the DLLs it gives no problem. But when I transfer only the EXE file of the application and try to exceute there it gives exception as the DLL is not present. So, my question is how can I create the windows Exe file which will combine all the required DLLs for its use. I am not interested in creating and Installer or use Packaging Project. This application has to be designed as a simple EXE (ony one file) file which I can transfer to any machine and perform the work there. Of course the targetr machines have .Net Framework installed.
Please try to provide some solution, if possible with some code example.
Thanks in Advance.
Ashok
|
|
|
|
|
Copy all the code out of your dlls into your main project. That's your only option.
Christian Graus - Microsoft MVP - C++
"also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )
|
|
|
|
|
All the DLLs are already present in the same directory.
|
|
|
|
|
I'm sorry. I guess you didn't read what I said. If you want to distribute the exe without the dlls, you need to take the code out of the dlls, put it in your main project, and build an exe where the code is all inside the exe, instead of in dlls.
Christian Graus - Microsoft MVP - C++
"also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )
|
|
|
|
|
Thank you for your suggestion. But this is not possible as I don't have the code with me, just the DLLs.
Is it possible now?
|
|
|
|
|
Your problem just like me, but maybe you can try use Ilmerge GUI or Xenocode2007, but if you use ILmerge GUI (surf to the internet), the other PC must have framework that same with your project.
|
|
|
|
|
Have you tried with ILmerge GUI ? The other machine has the framework, that is not a problem.
OK, I will search for this tool now.
|
|
|
|
|
Dear,
It worked for me. Thanks a lot.
|
|
|
|
|
Hello,
1. I create a DLL in VB.NET. This dll (and all the other I will create in the future) is located on a net server (Novell).
2. I had created a program that use this dll.
3. The program is installed on 10 different computers.
I would like that my program will use the dll installed on the net not the dll installed on the local pc.
The cause is if I am upgrading my dll I don't want:
a. Prepare a new setup for the application.
b. Run setup again in each one of the computers.
How can I do this?
Please help, thanks
Shay Noy
|
|
|
|
|
The way to do this that isn't insane, is to dynamically load the dll locally and jsut write code that checks the server for a new version and installs it if it exists.
Christian Graus - Microsoft MVP - C++
"also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )
|
|
|
|
|
If I understood right, I should write a small application that running on each one of the local computers and check for new version of dll and if there are new version of dll I have to copy them to the local client pc?
If yes, this is a big project because we have a lot of application and a lot of dll and a lot of computers in our factory.
I thought that instead of using the dll from Local pc, the program will use the dll from its location on the net. And after upgrading it, the program will use thi last upgrade one. Can it be done in this way?
Shay Noy
|
|
|
|
|
shaynoy wrote: Can it be done in this way?
No, you can't. Apart from any other considerations, you want one PC to run all the code for all the computers in your factory ?
It's really not much work at all. It's boilerplate code, you write it once and reuse. Hell, just deploy with clickonce and set it for automatic updates.
Christian Graus - Microsoft MVP - C++
"also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )
|
|
|
|
|
Thank you all for your fast replies.
How can I set a program for automatic updates? Do you mean from windows schedule?
Shay Noy
|
|
|
|
|
Hi
I want to send data to datagrid that is in the other program but i cannt do it with SENDMESSAGE() api like textbox PLZ help how can i replace a datagrid(that is in the other program) data with my data ???
|
|
|
|
|
Only if you wrote both programs. WM_COPYDATA is one way to do it.
Christian Graus - Microsoft MVP - C++
"also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )
|
|
|
|
|
Christian Graus wrote: Only if you wrote both programs.
No, i dont write the other program ...
TNX for your attention
|
|
|
|
|
If they are both .NET programs, you can probably decompile the program, change it and recompile. Otherwise, you probably can't do it at all.
Christian Graus - Microsoft MVP - C++
"also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )
|
|
|
|
|
I dont know the other program write in witch language but i know cannot decompile it ...
There is any other way ???
|
|
|
|
|
Good Morning All
I have been Building my applications in Tiers and they are working well. i have a Question. the 3 Tier Applications after Compilation will be DLLs now, in my Case when ever i install the Application in my Clients Computer,, my DLL's (Layers). So all the DLL's are in the Same machine and my Users are not many so that doesnt accect the Perfomance of my Application. So i would like to how can i take one Layer and take it to another Server and and another Layer(DLL) to another server, so that when the number of users Grow the perfomance will still be good, and how will the other layer know the location of the other layer if they are separated, is that achieved through code and how.
Thanks
Vuyiswa Maseko,
Sorrow is Better than Laughter, it may Sadden your Face, but It sharpens your Understanding
VB.NET/SQL7/2000/2005
http://vuyiswamb.007ihost.com
http://Ecadre.007ihost.com
vuyiswam@tshwane.gov.za
|
|
|
|
|
Vuyiswa wrote: So i would like to how can i take one Layer and take it to another Server and and another Layer(DLL) to another server, so that when the number of users Grow the perfomance will still be good, and how will the other layer know the location of the other layer if they are separated, is that achieved through code and how.
You would do this by writing code to communicate between layers over the network. Odds are, the speed of network traffic will negate any benefits you may hope for.
Christian Graus - Microsoft MVP - C++
"also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )
|
|
|
|
|
Let me Google and i will come up with Questions after a research
thanks
Vuyiswa Maseko,
Sorrow is Better than Laughter, it may Sadden your Face, but It sharpens your Understanding
VB.NET/SQL7/2000/2005
http://vuyiswamb.007ihost.com
http://Ecadre.007ihost.com
vuyiswam@tshwane.gov.za
|
|
|
|
|
Hi: Does anyone know, or have code, to color the Windows XP taskbar . I know some of the Windows Blinds software does this; but, then both I and the end user would need the software installed.
I sometimes make themes and would like to coordinate the taskbar color with the wallpaper .
And a small program just to do this (and have it reversable by running a second time would be what I want).
If I knew where this item was in Windows I have someone who might be able to help.
thanks, Harry
|
|
|
|
|
An article that I wrote explains the closest way that I have been able to see to do this without expensive software. the article can be found here:Add Transparent Menus and Titlebar Buttons to your Applications[^]
Regards,
Thomas Stockwell
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
Visit my homepage Oracle Studios[ ^]
|
|
|
|
|
Hi: Does anyone know how to read the MAC code internally from a program . I want to use this to develop passwords so some software will only install on one machine.
any help appreciated, Swamp Daddy
|
|
|
|
|
You do this with WMI. The processor Id is a better candidate IMO.
Christian Graus - Microsoft MVP - C++
"also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )
|
|
|
|