Re: Is it possible to include a dll in the exe

From: jer_m (jmghost_at_msn.com)
Date: 12/09/04


Date: Wed, 8 Dec 2004 18:29:02 -0800


Hi Daniel,

I've done what Alex is talking about, You can even inherit your main form
from a custom form in the dll. I did it by.

1. creating a new class in the application
2. creating static constructor for that class ( this is where you would put
the code to extract your dll, you just need to extract it to the same
location as your .exe, the clr will look for it there)
3. moving static void main() function out of the form and into the new class.

This will allow you to extract the dll before the clr tries to load it.

In fact I include all of the resources as embedded resources. This way I
don't need to create a .cab to install the app. We can send the same .exe to
a customer to test on their desktop as the one we put on their device, with
no install. I also had problems debugging with the emulator with images
built as content that were stored in folders. The images would be deployed
to the emulator with a flat directory structure so the app couldn't locate
them. Embedding them into the project and extracting them in the same manor
as the custom control dll fixed this.

I was working on an example that I was going to post at some point but never
got around to it, I will go ahead and send it to you

Kind Regards,
Jerron

"Daniel Moth" wrote:

> That is fine on the desktop and for the benefit of the archives the code
> snippet needs to close the stream before using types from the assembly (and
> should check if the file already exists before creating it).
>
> On the CF it seems the dependencies are checked before any user code gets a
> chance to execute, so I cannot get it working. If you have a working CF
> example please send it to me (I am interested in it from a POC point of view
> :-).
>
> Cheers
> Daniel
> --
> http://www.danielmoth.com/Blog/
>
>
> "Alex Feinman [MVP]" <public_news@alexfeinman.com> wrote in message
> news:OcEJk9V3EHA.2572@TK2MSFTNGP11.phx.gbl...
> > You can add DLL to the project, mark it as embedded resource, then, upon
> > loading your application, check for the dll existence in the file system
> > and if it's not there, simply copy it there from the resource stream.
> >
> > Stream strDLL =
> > Assembly.GetExecutingAssembly().GetManifestResourceStream("MyNameSpace.MyDll.dll");
> > //Case sensitive
> > string path =
> > Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetModules()[0].FullyQualifiedName);
> > FileStream fs = File.Create(path + "\\MyDLL.dll");
> > int nRead = -1;
> > byte[] buffer = new byte[4096];
> > while(nRead != 0)
> > {
> > nRead = strDLL.Read(buffer, 0, buffer.Length);
> > if ( nRead > 0 )
> > fs.Write(buffer, 0, nRead);
> > }
> >
> > --
> > Alex Feinman
> > ---
> > Visit http://www.opennetcf.org
> > "ORC" <orc@sol.dk> wrote in message
> > news:uZX04ES3EHA.2312@TK2MSFTNGP15.phx.gbl...
> >> HI,
> >>
> >> It is possible to include a custom control dll in the exe file so that
> >> the
> >> dll isn't a standalone file that will have to be copied to the PDA along
> >> with the exe file?
> >>
> >> Thanks,
> >> Ole
> >>
> >>
> >
> >
>
>
>



Relevant Pages

  • RE: system.badimageformatexception returned from custom installer
    ... How do you invoke that dll from the customer action? ... The dll is created as a seperate project. ... Action dll by going to the custom actions tab and then by right clicking ... Yes it is an installer class. ...
    (microsoft.public.dotnet.framework)
  • RE: system.badimageformatexception returned from custom installer
    ... which references the dll that contains the custom installer code. ... Would you please provide more detailed information about your custom ... Microsoft Online Community Support ...
    (microsoft.public.dotnet.framework)
  • Re: USB Custom Client Driver
    ... I was able to create custom oalioctl dll, from the cloned oalioctl in Public ... then it creates two source files. ... I am trying to implement USB Function Custom Client Driver. ...
    (microsoft.public.windowsce.embedded)
  • Re: Custom Uninstall Question
    ... The CAB configuration file has a parameter for the custom setup dll file. ... The CAB file is copied and executed on the device itself so your custom DLL ... >>> settings that get created post installation. ...
    (microsoft.public.pocketpc.developer)
  • Re: ASP.Net and CustomError Handling
    ... I think you're on the right track but then as stated earlier, the custom dll ... Maybe you need to disable the 404 default handling in IIS. ... Paul maybe you can check the Custom Error tab in IIS on your development ...
    (microsoft.public.dotnet.framework.aspnet)