Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Can we bind three assembly to one executable file.

1 view
Skip to first unread message

Umut Tezduyar

unread,
Sep 7, 2003, 5:03:37 AM9/7/03
to
My solution contains three assembly and one executable application file.
Before i distribute my solution, i want to bind 4 project to one executable
file. Is there a way for this.

Explanation:

Assembly1.dll
Assembly2.dll
Assembly3.dll
WindowsApplication.exe
----------------------------------------
Application.exe (Contains 4 project that i wrote previously)


Chris Taylor

unread,
Sep 7, 2003, 6:18:19 AM9/7/03
to
Hi,

If you compiled the into modules, you could then use al.exe (assembly
linker) to combine the modules into a single assembly.
VS.NET does not support building modules, so you will have to do it a the
commandline. The following example uses the C# compiler to build two
modules.

csc /out:module1.mod /t:module module1.cs
csc /out:module2.mod /t:module module2.cs

Then using al.exe you can combine the modules into a single assembly

al /out:mytools.dll /t:lib module1.mod module2.mod

The modules do not need to all be the same language, you can combine VB.NET
modules and C# modules into a single assembly.

I hope this helps

Chris Taylor

"Umut Tezduyar" <utez...@onmap.com.tr> wrote in message
news:Oa6Wy7Rd...@TK2MSFTNGP11.phx.gbl...

Umut Tezduyar

unread,
Sep 7, 2003, 2:58:48 PM9/7/03
to
I want to explain what i tried.

I made a cs file names Class1.cs. Its namespace is Namespace1. I compiled it
to namespace1.mod.
I made a cs file names Class2.cs. Its namespace is Namespace2. I compiled it
to namespace2.mod.

Then using Al.exe i linked them to a Assemblies.dll. I opened a new project
and add reference to the Assebmlies.dll. Its methadata doesnt appeared in
the intellisense. Do you have any idea about this.

Except this issue, the information you have given is wonderfull for me,
thanks a lot!!

"Chris Taylor" <chris_t...@hotmail.com> wrote in message
news:%23LqcnjS...@TK2MSFTNGP10.phx.gbl...

Chris Taylor

unread,
Sep 7, 2003, 3:44:07 PM9/7/03
to
Hi,

This is a known issue with VS. Only the types in the manifest DLL will be
shown in the intellisense.
One thing you could do which would slightly improve the situation is compile
one of the modules src as the
manifest DLL.

csc /out:module1.mod /t:module module1.cs

csc /out:Assemblies.dll /t:library module2.cs /addmodule:module1.mod

Now the types in module2 should be visible to the intellisense, but I have
not tested this!
Note that doing it like this you do not need to use AL.EXE.

Regards

Chris Taylor

"Umut Tezduyar" <utez...@onmap.com.tr> wrote in message

news:OrGJYIXd...@tk2msftngp13.phx.gbl...

Umut Tezduyar

unread,
Sep 8, 2003, 4:09:30 AM9/8/03
to
As you told, the second class is in the intellisense. There were no errors,
when i tried to use the first one (In the module).
This conversation is completely perfect for me, thanks a lot.

"Chris Taylor" <chris_t...@hotmail.com> wrote in message

news:uaso9fXd...@TK2MSFTNGP09.phx.gbl...

0 new messages