导航:首页 > 源码编译 > 怎样用dos编译cs文件

怎样用dos编译cs文件

发布时间:2022-07-27 12:17:51

A. 怎样把.cs文件编译成DLL文件

开始--程序--Microsoft Visual Studio.NET 2005--Visual Studio.NET工具,点击其中的“Visual Studio.NET2005命令提示”,就会进入Microsoft Visual Studio.NET 2005命令提示窗口,然后我们用dos命令(cd)进入要编译成dll的cs文件所在的目录,然后输入命令:

csc /out: bin\index.dll /t:library index.cs

回车,就会在bin目录下生成与cs文件同名的dll文件

但是如果这个cs文件引用了bin目录下的另外一个dll文件如comman.dll,则应该这样输入命令:

csc /out: bin\index.dll /r: bin\comman.dll /t:library index.cs

B. 请问,怎样将用C#写的类文件比如lib.cs在dos环境下编译成dll文件,谢谢。

编译命令用csc 你的cs文件
就会生成exe

C. 用c#编写的windows应用程序怎么用dos命令编译

csc.exe是.NET Framework SDK中的一个工具,当然用VS舒服多了...
不怕麻烦或者小硬盘的可以用用看,下面是些基本编辑,编译,调试操作(很不详细,详细请看MSDN :) ):
1.配置C#命令行编辑器:
我的电脑 - 属性 - 高级 - 环境变量 - 系统变量列表对话框 - 双击Path变量 -
在当前路径值的末尾加入(路径变量里各值用分号区隔): C:\Windows\Microsoft.NET\Framework\v2.0.50727 (注意,路径和版本号会因为你的安装和下载的不同而不同,自己到安装目录下看看)
如果配置成功,在命令窗口中输入: csc /? 将显示C#编译器支持的选项列表.
2.配置其他.NET命令行工具:
将附加路径变量加入系统变量列表框: C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin
如果配置成功,在命令窗口中输入:gacutil /? 查看GAC工具gacutil.exe的各个选项.
3.使用csc.exe和记事本构建C#应用程序:
- 使用记事本编辑源代码,并保存为.cs格式,如TestApp.cs,存储路径C:\CscExample\
//TestApp.cs
using System;
class TestApp
{
public static void Main()
{
Console.WriteLine("Testing!");
}
}
- 打开cmd,转到源文件保存的目录
- 输入命令: csc /target:exe TestApp.cs 将TestApp.cs编译成名为TestApp.exe的console应用程序
C#编译器的输出选项(详细查阅相关手册或MSDN):
选项 作用
------------------------------------------------------------------------------------------------------------------
/out 该选项用于指定被构建出的程序集的名字。默认条件下,程序集的名字或者与最初输入的*.cs文件名字相同(生成
*.dll文件的情况下),或者与包含程序的Main()方法的那个类型的名字相同(生成*.exe文件的情况下)
------------------------------------------------------------------------------------------------------------------
/target:exe 本选项构建一个可执行的控制台应用程序。这是默认的文件输出类型,并且在创建该应用程序类型时可被忽略。
------------------------------------------------------------------------------------------------------------------
/target:library 本选项构建一个单一文件*.dll程序集。
------------------------------------------------------------------------------------------------------------------
/target:mole 本选项构建一个模块(mole)。所谓模块是指组成多文件程序集的元素。
------------------------------------------------------------------------------------------------------------------
/target:winexe 本选项构建一个可执行的windows应用程序,尽管使用/target:exe也能创建窗体应用程序,但本选项创建的程序
运行时不会有控制窗口出现在桌面背景上。
------------------------------------------------------------------------------------------------------------------
4.引用外部程序集:
修改TestApp.cs,显示一个Windows窗体消息框:
//TestApp.cs
using System;
using System.Windows.Forms;
class TestApp
{
public static void Main()
{
Console.WriteLine("Testing!");
MessageBox.Show("Hello!");
}
}
在命令行中,必须通知csc.exe,哪个程序集包含了“所用的“命名空间。因此,必须使用/reference标志指定System.Windows.Forms.dll
csc /reference:System.Windows.Forms.dll TestApp.cs
5.使用csc.exe编译多个源文件:
- 显式的列出各个导入文件来编译C#文件: csc /r:System.Windows.Forms.dll TestApp.cs HelloMsg.cs
- 使用通配符(*)通知csc.exe: csc /r:System.Windows.Forms.dll *.cs
//TestApp.cs
using System;
class TestApp
{
public static void Main()
{
Console.WriteLine("Testing!");
HelloMessage h = new HelloMessage();
h.Speak();
}
}

//HelloMsg.cs
using System;
using System.Windows.Forms;

class HelloMessage
{
public void Speak()
{
MessageBox.Show("Hello!");
}
}
6.引用多个外部程序集:
- 使用分号列出各个程序集: csc /r:System.Windows.Forms.dll;System.Drawing.dll *.cs
7.使用csc.exe响应文件(respose file):
- C#响应文件包含了在当前构建的编译期间要用到的所有指令,通常约定,响应文件的扩展名为*.rsp
- 响应文件中注释使用“#”字符标识
- 在编译指令中响应文件前加@符号: csc @TestApp.rsp
- /reference标志具有累加性,而其他标志(如/out)将用后面的命令覆盖前面的命令
- 可以指定多个响应文件作为输入(例如csc @FirstFile.rsp @SecondFile.rsp @ThirdFile.rsp)
- 也可混合使用响应文件和标志(例如csc /out:TestApp.exe @TestApp.rsp)
# 建立4中TestApp.exe的响应文件 TestApp.rsp
#
# 外部程序集引用
/r:System.Windows.Forms.dll
#
# 用于编译的输出和文件
/target:exe /out:TestApp.exe *.cs
8.默认的响应文件csc.rsp:
- C#编译器有一个相关联的默认响应文件csc.rsp, 该响应文件与csc.exe在同一目录.
- 当用csc.exe构建C#程序时,该文件将自动被引用(即使提供了自定义*.rsp文件时)
- 要取消自动读取csc.rsp,可以指定 /noconfig 选项
################################################################################
命令行调试器(cordbg.exe):
- 使用cordbg /? 查看调试器提供的标志选项
部分有用的cordbg.exe命令行标志:
标志(全称/缩写) 作用
----------------------------------------------------
b[reak] 设定或显示当前断点
del[ete] 去除一个或多个断点
ex[it] 退出调试器
g[o] 继续调试当前进程直至发现下一个断点
o[ut] 退出当前函数
p[rint] 打印所有加载的变量(局部,实参等)
si 进入下一行
so 越过下一行
----------------------------------------------------
在命令行进行调试:
- 给应用程序生成调式数据: csc @TestApp.rsp /debug , 将生成一个名为TestApp.pdb的关联文件
- 将欲调试的.NET程序集指定为命令行实参,进入调试模式(*.pdb文件将被自动加载: cordbg.exe TestApp.exe
- 使用cordbg.exe命令行标志进行调试

D. 怎么通过C#使用DOS命令,从而完成一个类似于批处理文件。

@echo off
set p=C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\
cd /d C:\c#\事例
for /f %%i in ('dir/b *.cs') do %p%csc.exe /out:"%%~ni.exe" "%%i"

E. 如何在DOS下运行VC#

你要使用 .NET SDK命令行工具,你可以手动增加path目录C:\Windows\Microsoft.NET\Framework\v2.0.40607,或者CD到C:\Windows\Microsoft.NET\Framework\v2.0.40607(我的是VS2005,所以是V2.0,你VS2008自己找到3.5路径),然后使用CSC命令编译你的CS文件,格式是这样的 csc d:\helloworld.cs,然后会自动生成helloworld.exe的可执行文件,然后执行helloworld就行了

F. 如何在DOS下编译C/C++程序

1, 找到VS的cl.exe所在目录,把这目录复制下来:
我的VS2008的CL.EXE目录是在E:\Program Files\Microsoft Visual Studio 9.0\VC\bin,
VS2010可以类似的找到..

在'我的电脑'上点右键,
选右键菜单'属性'->'高级'->'环境变量',
在弹出的环境变量设置框里找"PATH"这个变量, (在用户变量或系统变量里都可以)
然后在"PATH"的值后面,用分号分隔,
把将才找到的路径串复制进去,选确定.

2, 重新运行CMD开启新的命令窗.

3, 输入cl回车检查PATH路径是否生效.

//以上步聚是设置环境变量,只需设一次以后就好用了.以后每次要命令行下编译C++程序,就从下面第4步开始.

4, 输入vcvars32 ,运行cl.exe同一路径下的vcvars32.bat,设置其它环境变量.

5, 写一个helloworld程序,保存成hello.cpp, cl hello.cpp回车试试编译正常不. 如果成功,则生成hello.exe文件.

//-----------------------------------------------------------

C/C++ 编译器选项

-优化-

/O1 最小化空间 /Op[-] 改善浮点数一致性
/O2 最大化速度 /Os 优选代码空间
/Oa 假设没有别名 /Ot 优选代码速度
/Ob<n> 内联展开(默认 n=0) /Ow 假设交叉函数别名
/Od 禁用优化(默认值) /Ox 最大化选项。(/Ogityb2 /Gs)
/Og 启用全局优化 /Oy[-] 启用框架指针省略
/Oi 启用内部函数

-代码生成-

/G3 为 80386 进行优化 /Gh 启用 _penter 函数调用
/G4 为 80486 进行优化 /GH 启用 _pexit 函数调用
/G5 为 Pentium 进行优化 /GR[-] 启用 C++ RTTI
/G6 对 PPro、P-II、P-III 进行优化 /GX[-] 启用 C++ EH (与 /EHsc 相同)
/G7 对 Pentium 4 或 Athlon 进行优化 /EHs 启用 C++ EH (没有 SEH 异常)
/GB 为混合模型进行优化(默认) /EHa 启用 C++ EH(w/ SEH 异常)
/Gd __cdecl 调用约定 /EHc extern "C" 默认为 nothrow
/Gr __fastcall 调用约定 /GT 生成纤维安全 TLS 访问
/Gz __stdcall 调用约定 /Gm[-] 启用最小重新生成
/GA 为 Windows 应用程序进行优化 /GL[-] 启用链接时代码生成
/Gf 启用字符串池 /QIfdiv[-] 启用 Pentium FDIV 修复
/GF 启用只读字符串池 /QI0f[-] 启用 Pentium 0x0f 修复
/Gy 分隔链接器函数 /QIfist[-] 使用 FIST 而不是 ftol()
/GZ 启用堆栈检查(/RTCs) /RTC1 启用快速检查(/RTCsu)
/Ge 对所有函数强制堆栈检查 /RTCc 转换为较小的类型检查
/Gs[num] 控制堆栈检查调用 /RTCs 堆栈帧运行时检查
/GS 启用安全检查 /RTCu 未初始化的本地用法检查
/clr[:noAssembly] 为公共语言运行库编译
noAssembly - 不产生程序集
/arch:<SSE|SSE2> CPU 结构的最低要求,以下内容之一:
SSE - 启用支持 SSE 的 CPU 可用的指令
SSE2 - 启用支持 SSE2 的 CPU 可用的指令

-输出文件-

/Fa[file] 命名程序集列表文件 /Fo<file> 命名对象文件
/FA[sc] 配置程序集列表 /Fp<file> 命名预编译头文件
/Fd[file] 命名 .PDB 文件 /Fr[file] 命名源浏览器文件
/Fe<file> 命名可执行文件 /FR[file] 命名扩展 .SBR 文件
/Fm[file] 命名映射文件

-预处理器-

/AI<dir> 添加到程序集搜索路径 /Fx 将插入的代码合并到文件
/FU<file> 强制使用程序集/模块 /FI<file> 命名强制包含文件
/C 不抽出注释 /U<name> 移除预定义宏
/D<name>{=|#}<text> 定义宏 /u 移除所有预定义宏
/E 预处理到 stdout /I<dir> 添加到包含搜索路径
/EP 预处理到 stdout,没有 #line /X 忽略“标准位置”
/P 预处理到文件

-语言-

/Zi 启用调试信息 /Ze 启用扩展(默认)
/ZI 启用“编辑并继续”调试信息 /Zl 省略 .OBJ 中的默认库名
/Z7 启用旧式调试信息 /Zg 生成函数原型
/Zd 仅有行号调试信息 /Zs 只进行语法检查
/Zp[n] 在 n 字节边界上包装结构 /vd{0|1} 禁用/启用 vtordisp
/Za 禁用扩展(暗指 /Op) /vm<x> 指向成员的指针类型
/Zc:arg1[,arg2] C++ 语言一致性,这里的参数可以是:
forScope - 对范围规则强制使用标准 C++
wchar_t - wchar_t 是本机类型,不是 typedef

- 杂项 -

@<file> 选项响应文件 /wo<n> 发出一次警告 n
/?, /help 打印此帮助消息 /w<l><n> 为 n 设置警告等级 1-4
/c 只编译,不链接 /W<n> 设置警告等级(默认 n=1)
/H<num> 最大外部名称长度 /Wall 启用所有警告
/J 默认 char 类型是 unsigned /Wp64 启用 64 位端口定位警告
/nologo 取消显示版权消息 /WX 将警告视为错误
/showIncludes 显示包含文件名 /WL 启用单行诊断
/Tc<source file> 将文件编译为 .c /Yc[file] 创建 .PCH 文件
/Tp<source file> 将文件编译为 .cpp /Yd 将调试信息放在每个 .OBJ 中
/TC 将所有文件编译为 .c /Yl[sym] 为调试库插入 .PCH 引用
/TP 将所有文件编译为 .cpp /Yu[file] 使用 .PCH 文件
/V<string> 设置版本字符串 /YX[file] 自动 .PCH
/w 禁用所有警告 /Y- 禁用所有 PCH 选项
/wd<n> 禁用警告 n /Zm<n> 最大内存分配(默认为 %)
/we<n> 将警告 n 视为错误

-链接-

/MD 与 MSVCRT.LIB 链接 /MDd 与 MSVCRTD.LIB 调试库链接
/ML 与 LIBC.LIB 链接 /MLd 与 LIBCD.LIB 调试库链接
/MT 与 LIBCMT.LIB 链接 /MTd 与 LIBCMTD.LIB 调试库链接
/LD 创建 .DLL /F<num> 设置堆栈大小
/LDd 创建 .DLL 调试库 /link [链接器选项和库]

G. C语言如何用dos命令编译,如何将编译和运行结果重定向到某个文件里

你需要设置cl和linker所在目录的
环境变量
,例如我在win7下的路径的是C:\Program
Files
(x86)\Microsoft
Visual
Studio
8\VC\bin
你按下面的步骤就可以设置了。有问题可以
网络HI
我:步骤如下:
1.首先,打开
配置环境变量
界面,如下操作:我的电脑---属性---高级---环境变量
2.编辑PATH变量,在PATH变量的最后如果没有分号,要增加一个分号,然后是你的cl和linker所在目录的全路径,后面记得要加分号,确定应该就可以了。
记得把cmd窗口重新打开一下。
另外,虚机团上产品团购,超级便宜

H. 怎么在DOS下编译C语言成为.exe文件啊

装mingw
将bin目录添加到
系统变量
运行cmd,输入gcc
出现
找不到文件的提示就
说明安装
成功了
命令gcc
用法示例:
编译:
gcc
-c
main.c
生成
main.o
连接:
gcc
-o
m.exe
main.o
生成m.exe
可执行文件
编译连接一起来就是
gcc
-o
m.exe
main.c
//适合单文件,不要用于工程中
如果是c++的话
连接要用g++命令

I. c语言命令行程序如何在DOS下编译运行

点击电脑开始菜单,打开运行窗口,在窗口编辑框里输入cmd,点击确定按钮,打开cmd命令
窗口,然后进入你的工程目录中的可执行程序文件夹
输入可执行程序文件名后面带上你需要的参数按Enter键就可以了
cmd命令:如你的可执行程序在D://CP//debug/aa.exe
你需要在命令行窗口输入d:按Enter键进入D盘
cdCP/debug按Enter键进入D盘中CP目录debug子目录中
输入aa.exe23按Enter键运行你的程序结果就会出现
2.000000tothe3.000000power=8

J. 如何在DOS界面进行C语言编译

以我本机为实例,我的VC6安装在C盘,具体路径:
C:\Program Files\Microsoft Visual Studio\VC98\Bin

你可以像我这样尝试输入该路径下的可执行文件,看看其用途说明,就知道哪个是编译用的,哪个是链接用的。。。

C:\Program Files\Microsoft Visual Studio\VC98\Bin>cl
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8168 for 80x86
Copyright (C) Microsoft Corp 1984-1998. All rights reserved.

usage: cl [ option... ] filename... [ /link linkoption... ]

然后我新建了一个cpp文件,就是显示hello world,放在C:\test1\下面,我是这样编译的:

C:\Program Files\Microsoft Visual Studio\VC98\Bin>cl c:\test1\main.cpp
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8168 for 80x86
Copyright (C) Microsoft Corp 1984-1998. All rights reserved.

main.cpp
Microsoft (R) Incremental Linker Version 6.00.8168
Copyright (C) Microsoft Corp 1992-1998. All rights reserved.

/out:main.exe
main.obj

C:\Program Files\Microsoft Visual Studio\VC98\Bin>main
Hello world!

C:\Program Files\Microsoft Visual Studio\VC98\Bin>

阅读全文

与怎样用dos编译cs文件相关的资料

热点内容
一年程序员面试 浏览:174
多个jpg合成pdf 浏览:929
pdf转word是图片 浏览:939
程序员看不懂怎么办 浏览:271
linux操作系统题 浏览:765
单片机无符号数加法 浏览:227
应用隐藏加密怎么关闭 浏览:269
汽车空调的压缩机电线有什么用 浏览:429
电脑加密图片如何取消加密 浏览:340
慧净电子51单片机视频 浏览:343
javamap赋值 浏览:165
什么app可以玩掌机游戏 浏览:46
java简单聊天室 浏览:462
通用汽车编程软件 浏览:432
一级抗震框架梁箍筋加密区规定是多少 浏览:974
教你如何把安卓手机变成苹果 浏览:11
app编译分类 浏览:323
怎么用服务器的资源包 浏览:199
oa软件手机登陆服务器地址 浏览:289
androidrtp打包 浏览:723