c#使用命令行编译生成dll文件
发布网友
发布时间:2022-04-30 18:21
我来回答
共6个回答
热心网友
时间:2022-06-29 02:07
C#使用csc.exe编译程序,csc使用/target:library(缩写: /t:library)参数生成Dll文件。
其它参数如下:
Visual C# 编译器选项
- 输出文件 -
/out:<文件> 指定输出文件名(默认值: 包含主类的文件或第一个文件的基名称)
/target:exe 生成控制台可执行文件(默认) (缩写: /t:exe)
/target:winexe 生成 Windows 可执行文件 (缩写: /t:winexe)
/target:library 生成库 (缩写: /t:library)
/target:mole 生成能添加到其他程序集的模块 (缩写: /t:mole)
/target:appcontainerexe 生成 Appcontainer 可执行文件 (缩写: /t:appcontainerexe)
/target:winmdobj 生成 WinMDExp 使用的 Windows 运行时中间文件 (缩写: /t:winmdobj)
/doc:<文件> 要生成的 XML 文档文件
/platform:<字符串> *可以在其上运行此代码的平台: x86、Itanium、x64、arm、anycpu32bitpreferred 或 anycpu。默认值为 anycpu。
- 输入文件 -
/recurse:<通配符> 根据通配符规范,包括当前目录和子目录下的所有文件
/reference:<别名>=<文件> 使用给定的别名从指定的程序集文件引用元数据 (缩写: /r)
/reference:<文件列表> 从指定的程序集文件引用元数据 (缩写: /r)
/addmole:<文件列表> 将指定的模块链接到此程序集中
/link:<文件列表> 嵌入指定的互操作程序集文件中的元数据 (缩写: /l)
- 资源 -
/win32res:<文件> 指定 Win32 资源文件(.res)
/win32icon:<文件> 对输出使用此图标
/win32manifest:<文件> 指定 Win32 清单文件(.xml)
/nowin32manifest 不包括默认 Win32 清单
/resource:<资源信息> 嵌入指定的资源 (缩写: /res)
/linkresource:<资源信息> 将指定的资源链接到此程序集 (缩写: /linkres)
其中 resinfo 的格式是 <file>[,<string name>[,public|private]]
- 代码生成 -
/debug[+|-] 发出调试信息
/debug:{full|pdbonly} 指定调试类型(“full”是默认类型,可以将调试程序附加到正在运行的程序)
/optimize[+|-] 启用优化 (缩写: /o)
- 错误和警告 -
/warnaserror[+|-] 将所有警告报告为错误
/warnaserror[+|-]:<警告列表> 将特定警告报告为错误
/warn:<n> 设置警告等级(0-4) (缩写: /w)
/nowarn:<警告列表> 禁用特定的警告消息
- 语言 -
/checked[+|-] 生成溢出检查
/unsafe[+|-] 允许“不安全”代码
/define:<符号列表> 定义条件编译符号 (缩写: /d)
/langversion:<字符串> 指定语言版本模式: ISO-1、ISO-2、3、4、5 或 Default
- 安全性 -
/delaysign[+|-] 仅使用强名称密钥的公共部分对程序集进行延迟签名
/keyfile:<文件> 指定强名称密钥文件
/keycontainer:<字符串> 指定强名称密钥容器
/highentropyva[+|-] 启用高平均信息量的 ASLR
- 杂项 -
@<文件> 有关更多选项,请阅读响应文件
/help 显示此用法信息 (缩写: /?)
/nologo 取消编译器版权信息
/noconfig 不要自动包含 CSC.RSP 文件
- 高级 -
/baseaddress:<地址> 要生成的库的基址
/bugreport:<文件> 创建“Bug 报告”文件
/codepage:<n> 指定打开源文件时要使用的代码页
/utf8output 以 UTF-8 编码格式输出编译器消息
/main:<类型> 指定包含入口点的类型(忽略所有其他可能的入口点) (缩写: /m)
/fullpaths 编译器生成完全限定路径
/filealign:<n> 指定用于输出文件节的对齐方式
/pdb:<文件> 指定调试信息文件名(默认值: 扩展名为 .pdb 的输出文件名)
/errorendlocation 输出每个错误的结束位置的行和列
/preferreilang 指定首选输出语言名称。
/nostdlib[+|-] 不引用标准库(mscorlib.dll)
/subsystemversion:<字符串> 指定此程序集的子系统版本
/lib:<文件列表> 指定要在其中搜索引用的附加目录
/errorreport:<字符串> 指定如何处理内部编译器错误: prompt、send、queue 或 none。默认值为 queue。
/appconfig:<文件> 指定一个包含程序集绑定设置的应用程序配置文件
/moleassemblyname:<字符串> 此模块所属程序集的名称
热心网友
时间:2022-06-29 02:07
Visual C# 2008 编译器选项
- 输出文件 -
/out:<文件> 指定输出文件名(默认值:
包含主类的文件或第一个文件的基名称)
/target:exe 生成控制台可执行文件(默认) (缩写: /t:exe)
/target:winexe 生成 Windows 可执行文件 (缩写: /t:winexe)
/target:library 生成库 (缩写: /t:library)
/target:mole 生成能添加到其他程序集的模块 (缩写: /t:mole)
/delaysign[+|-] 仅使用强名称密钥的公共部分对程序集进行延迟签名
/doc:<文件> 要生成的 XML 文档文件
/keyfile:<文件> 指定强名称密钥文件
/keycontainer:<字符串> 指定强名称密钥容器
/platform:<字符串> *可以在其上运行此代码的平台: x86、Itanium、x64
或 anycpu。默认值为 anycpu。
- 输入文件 -
/recurse:<通配符> 根据通配符规范,包括当前目录和子目录下的所有文件
/reference:<别名>=<文件> 使用给定的别名从指定的程序集文件引用元数据 (缩写:
/r)
/reference:<文件列表> 从指定的程序集文件引用元数据 (缩写: /r)
/addmole:<文件列表> 将指定的模块链接到此程序集中
- 资源 -
/win32res:<文件> 指定 Win32 资源文件(.res)
/win32icon:<文件> 对输出使用此图标
/win32manifest:<文件> 指定 Win32 清单文件(.xml)
/nowin32manifest 不包括默认 Win32 清单
/resource:<资源信息> 嵌入指定的资源 (缩写: /res)
/linkresource:<资源信息> 将指定的资源链接到此程序集 (缩写: /linkres)
其中 resinfo 的格式是 <file>[,<string
name>[,public|private]]
- 代码生成 -
/debug[+|-] 发出调试信息
/debug:{full|pdbonly} 指定调试类型(“full”是默认类型,可以将调试程序附
加到正在运行的程序)
/optimize[+|-] 启用优化 (缩写: /o)
- 错误和警告 -
/warnaserror[+|-] 将所有警告报告为错误
/warnaserror[+|-]:<警告列表> 将特定警告报告为错误
/warn:<n> 设置警告等级(0-4) (缩写: /w)
/nowarn:<警告列表> 禁用特定的警告消息
- 语言 -
/checked[+|-] 生成溢出检查
/unsafe[+|-] 允许“不安全”代码
/define:<符号列表> 定义条件编译符号 (缩写: /d)
/langversion:<字符串> 指定语言版本模式: ISO-1、ISO-2 或 Default
- 杂项 -
@<文件> 有关更多选项,请阅读响应文件
/help 显示此用法信息 (缩写: /?)
/nologo 取消编译器版权信息
/noconfig 不要自动包含 CSC.RSP 文件
- 高级 -
/baseaddress:<地址> 要生成的库的基址
/bugreport:<文件> 创建“Bug 报告”文件
/codepage:<n> 指定打开源文件时要使用的代码页
/utf8output 以 UTF-8 编码格式输出编译器消息
/main:<类型> 指定包含入口点的类型(忽略所有其他可能的入口点)
(缩写: /m)
/fullpaths 编译器生成完全限定路径
/filealign:<n> 指定用于输出文件节的对齐方式
/pdb:<文件> 指定调试信息文件名(默认值: 扩展名为 .pdb
的输出文件名)
/nostdlib[+|-] 不引用标准库(mscorlib.dll)
/lib:<文件列表> 指定要在其中搜索引用的附加目录
/errorreport:<字符串> 指定如何处理内部编译器错误: prompt、send、queue
或 none。默认值为 queue。
/moleassemblyname:<字符串> 此模块所属程序集的名称
热心网友
时间:2022-06-29 02:08
csc /t:library /out:c:/test2/aa.dll c:/test1/*.cs追问抱歉,你的这个命令没有用,我并不是单独编译工程cs文件,而是要编译解决方案.sln文件,这段命令对.sln文件是没有用处的
热心网友
时间:2022-06-29 02:08
点开始 运行 cmd
d
cd d:\你的程序目录
path %path%;csc文件所在的目录
csc MyDllFile.cs
热心网友
时间:2022-06-29 02:09
生成以后VS会自动帮你生成DLL
热心网友
时间:2022-06-29 02:10
cmd中输入csc /?
c#使用命令行编译生成dll文件
/out:<文件> 指定输出文件名(默认值: 包含主类的文件或第一个文件的基名称)/target:exe 生成控制台可执行文件(默认) (缩写: /t:exe)/target:winexe 生成 Windows 可执行文件 (缩写: /t:winexe)/target:library 生成库 (缩写: /t:library)/target:module 生成能添加到其他程序...
C#中.sln如何生成.dll文件
编译一下,自动变成DLL,在项目文件夹的OBJ文件夹里面
请问C#中如何生成.dll文件?
编译/生成/重新生成都可以,会生成Dll文件的。一般的会在Bin 或是 Debug 或是 Release下,这个时候生成的目录,可以设置的,最开始系统也会有一个默认的路径。 一般的,有一个解决方案有两个项目以上时会生成dll文件(有项目间的引用),其他就是项目里也引用了其他的Dll文件,编译以后也会生成出来。
c语言怎么调用dll文件?
1、新建DLLTest文件夹,在该文件夹中新建source文件夹。2、在source文件夹中造add.c。3、win+R+cmd请出总指挥“命令行”,输入。4、继续输入(路径也要随机应变)link /DLL /out:E:\VCfile\DLLTest\source\add.dll E:\VCfile\DLLTest\source\add.obj。5、新建源文件call_dll.c或.cpp放到DLL...
c#如何将类库输出成dll
把你写好的类库编译一下就可以生成dll了,生成的dll在bin/debug文件夹下,dll的名字和你类库的名字是一样的。前提是你新建项目的时候记得选择“类库”类型,不要选成winfrom,web什么的了。
如何在.Net的C#中制作DLL文件
编辑生成DLL文件 打开Microsoft Visual Studio 2010, 新建【windows窗体应用程序】的项目。在项目的基础上新建类库,点击右键,【添加】-【新建项目】。选择【类库】,名称为【ini】。在新增的类库项目中编辑代码,新增class为【Read_ini】。新增方法【ReadIniValue】,从类别、关键字、文件目录中获取参数。...
在Visual c# 2005 怎么生成lib文件和dll文件
1. 使用__declspec(dllexport)如你想导出函数foo, 则这样定义 __declspec(dllexport) int foo(int abc){ ...} 此法较简单,但没有模块定义文件灵活。2. 使用模块定义文件 如你想导出mydll.dll中函数foo,则添加mydll.def文件,输入 LIBRARY mydll EXPORTS foo 项目->属性->配置属性->链接器->...
c#用vs2015怎么将webservice 封装为dll
3、开始->所有程序->Microsoft Visual Studio 2010->Visual Studio Tools->Visual Studio 命令提示(2010),在弹出的DOS界面中,定位到存储WebService1.wsdl的硬盘,然后输入指令:WSDL WebService1.wsdl 回车,可以看到生成了一个WebService1.cs文件(和WebService1.wsdl同一目录下),然后输入指令:csc ...
详解两种C#自动实现DLL(OCX)控件注册的方法
命令可以在 开始→运行 的文本框中 也可以事先在bat批处理文档中编写好命令 未带任何参数是注册DLL文件功能 其它参数对应功能如下 /u 反注册DLL文件;/s 安静模式(Silent)执行命令 即在成功注册/反注册DLL文件前提下不显示结果提示框 /c 控制端口;/i 在使用/u反注册时调用DllInstall;/n 不调用Dll...
c#中编译cs文件为何无法生成dll文件,明明已经编译成功了,为什么dll文...
.CS文件可能会生成DLL 或者生成EXE前提是你的项目设置.如果没有设置那决定你有没有程序入口..也就是所谓的MAIN函数