I want to use command line tools (csc.exe, lc.exe) to compile a C# program
that uses licensed classes from custom assemblies.
If I use classes from just one assembly, everything works fine.
- Csc.exe compliles my source into an EXE
- lc.exe creates a .licenses file and
- csc.exe embeds the resource into my EXE.
(as shown in the help documentation of .NET Framework)
When I use licensed classes out of two different assemblies, I have to call
the module parameter (/i:...) from lc.exe with both assemblies separated
with a semicolon and declare both classes in the complist-file
(licenses.licx).
But, if I run lc.exe an error occurs that says, that it cannot resolve both
types.
If I run lc.exe with just one of the classes in the complist-file, lc.exe
has no error and creates the .licenses file. But, because of the other
class-license is not properly compiled, the resulting code throws a
license-exception.
The help documentation does not show how to include classes from different
assemblies.
If I run my program with Visual Studio, VS didn't have any problems in
compiling and executing. So I think there are no errors in my code. But, I
need to be able to compile my program in the command line.
Does anyone know, how to solve this problem?
DotNetJunkies User - 06 Jul 2004 16:22 GMT
Have you tried calling /i: twice?
That is /i:stuff1.dll /i:stuff2.dll instead of /i:stuff1.dll;stuff2.dll
---