创建windows控件库工程,将你的用户控件加入这个工程编译。

解决方案 »

  1.   

    创建windows控件库工程?呵,小弟不会,不吝赐教!
      

  2.   

    先做好你的.cs文件,然后用csc编序:
    如:.cs程序是cx.csset indir=d:\html\cx\cs\cx.cs
    set outdir=d:\html\bin\cx.dll
    set assemblies=System.dll,System.Data.dllC:\WINNT\Microsoft.NET\Framework\v1.1.4322\csc /t:library /out:%outdir% %indir% /r:%assemblies%
      

  3.   

    Visual C# .NET 编译器选项                        - 输出文件 -
    /out:<file>             输出文件名(默认值: 包含主类的文件或第一个文件的基名称)
    /target:exe             生成控制台可执行文件(默认) (缩写: /t:exe)
    /target:winexe          生成 Windows 可执行文件 (缩写: /t:winexe)
    /target:library         生成库 (缩写: /t:library)
    /target:module          生成能添加到其他程序集的模块 (缩写: /t:module)
    /define:<symbol list>   定义条件编译符号 (缩写: /d)
    /doc:<file>             要生成的 XML 文档文件                        - 输入文件 -
    /recurse:<wildcard>     根据通配符规范,包括当前目录和子目录下的所有文件
    /reference:<file list>  从指定的程序集文件引用元数据 (缩写: /r)
    /addmodule:<file list>  将指定的模块链接到此程序集中                        - 资源 -
    /win32res:<file>        指定 Win32 资源文件(.res)
    /win32icon:<file>       使用该图标输出
    /resource:<resinfo>     嵌入指定的资源 (缩写: /res)
    /linkresource:<resinfo> 将指定的资源链接到此程序集中 (缩写: /linkres)                        - 代码生成 -
    /debug[+|-]             发出调试信息
    /debug:{full|pdbonly}   指定调试类型(“full”是默认类型,可以将调试程序附加到正在运行的程序)
    /optimize[+|-]          启用优化 (缩写: /o)
    /incremental[+|-]       启用增量编译 (缩写: /incr)                        - 错误和警告 -
    /warnaserror[+|-]       将警告视为错误
    /warn:<n>               设置警告等级(0-4) (缩写: /w)
    /nowarn:<warning list>  禁用特定的警告消息                        - 语言 -
    /checked[+|-]           生成溢出检查
    /unsafe[+|-]            允许“不安全”代码                        - 杂项 -
    @<file>                 有关更多选项,请阅读响应文件
    /help                   显示此用法信息 (缩写: /?)
    /nologo                 取消编译器版权信息
    /noconfig               不要自动包含 CSC.RSP 文件                        - 高级 -
    /baseaddress:<address>  要生成的库的基址
    /bugreport:<file>       创建一个“错误报告”文件
    /codepage:<n>           指定打开源文件时要使用的代码页
    /utf8output             以 UTF-8 编码格式输出编译器消息
    /main:<type>            指定包含入口点的类型(忽略所有其他可能的入口点) (缩写: /m)
    /fullpaths              编译器生成完全限定路径
    /filealign:<n>          指定用于输出文件节的对齐方式
    /nostdlib[+|-]          不引用标准库(mscorlib.dll)
    /lib:<file list>        指定要在其中搜索引用的附加目录
    通过在命令行上键入 C# 编译器可执行文件的名称 (csc.exe),可以在命令行调用 C# 编译器。
    如果希望从计算机上的任何子目录调用 csc.exe,可能需要调整路径。
    运行 VCVARS32.BAT
    vcvars32.bat 设置适当的环境变量以启用命令行编译。
    运行 VCVARS32.BAT 
    在命令提示处,更改为安装的 \bin 子目录。 
    通过键入 VCVARS32,运行 VCVARS32.bat。 
    警告   VCVARS32.bat 因计算机的不同而变化。
    不要用其他计算机上的 VCVARS32.bat 替换丢失或损坏的 VCVARS32.bat 文件。
    重新运行安装程序以替换丢失的文件。如果 Visual Studio 当前版本安装在已经拥有 Visual Studio 早期版本的计算机上,则不应在同一命令窗口中运行来自不同版本的 vcvars32.bat。
    C# 编译器和 C++ 编译器输出之间的差异
    作为调用 C# 编译器的结果,没有创建任何对象 (.obj) 文件;直接创建输出文件。因此,C# 编译器不需要链接器。
    命令行语法规则
    当解释操作系统命令行上给出的参数时,C# 编译器代码使用下面的规则: 
    参数用空白分隔,空白可以是一个空格或制表符。 
    ^ 字符 (^) 未被识别为转义符或者分隔符。该字符在被传递给程序中的 argv 数组前,完全由操作系统的命令行分析器进行处理。 
    无论其中有无空白,包含在双引号 ("string") 中的字符串均被解释为单个参数。带引号的字符串可以嵌入在参数内。 
    前面有反斜杠的双引号 (\") 被解释为原义双引号字符 (")。 
    反斜杠按其原义解释,除非它们紧位于双引号之前。 
    如果偶数个反斜杠后跟双引号,则每对反斜杠中的一个反斜杠放置在 argv 数组中,并且双引号被解释为字符串分隔符。 
    如果奇数个反斜杠后跟双引号,则每对反斜杠中的一个反斜杠放置在 argv 数组中,双引号由其余的反斜杠“转义”,使原义双引号 (") 被放置在 argv 数组中。 命令行示例
    编译 File.cs 以产生 File.exe: 
    csc File.cs 
    编译 File.cs 以产生 File.dll: 
    csc /target:library File.cs
    编译 File.cs 并创建 My.exe: 
    csc /out:My.exe File.cs
    通过使用优化和定义 DEBUG 符号,编译当前目录中所有的 C# 文件。输出为 File2.exe: 
    csc /define:DEBUG /optimize /out:File2.exe *.cs
    编译当前目录中所有的 C# 文件,以产生 File2.dll 的调试版本。不显示任何徽标和警告: 
    csc /target:library /out:File2.dll /warn:0 /nologo /debug *.cs
    将当前目录中所有的 C# 文件编译为 Something.xyz(一个 DLL): 
    csc /target:library /out:Something.xyz *.cs
      

  4.   

    CSDN中的文档
    http://dev.csdn.net/develop/article/28/28203.shtm
    http://www.csdn.net/develop/Read_Article.asp?Id=28204