活动地址:毕业季·进击的技术er
夏日炎炎,热浪中我们迎来毕业季,这是告别,也是迈向新起点的开始,CSDN诚邀各毕业生/在校生/职场人讲述自己的毕业季故事,分享自己的经验,技术er的进击之路,等你来书写!我是从自身经历出发,分享自己的经验。
从哪个瞬间开始让你决定学习编程语言?
第一次接触编程语言是在 12 岁
那个时候看叔叔在一台赛扬上写 cs 游戏!
现在还有人知道赛扬机吗?我清晰地记得那是台 32 MB 的赛扬机。
话说现在的小孩子们还玩 反恐精英/CS/魔兽/红警 什么的单机游戏吗?
我可是亲眼看着叔叔咔咔咔的敲键盘 然后非常神奇的还能玩!!!
那是我第一次遇见 c#
从此 c# 在我心里打上了一个怎么也抹不去的标签:
就是用来写游戏的!!!
自学过 C、Java 感觉要是写游戏还是 C# 用起来舒服
毕竟控件咔咔点两下就是一个窗口 随便写写功能连上数据库就能跑起来玩……
于是这次打算把 c# 这个冷门语言重新拾起来!应该不难吧 Java 的底子在那儿呢
##################################################
目录
.NET 框架
任何一台可以打现代游戏的 Windows 都可以运行 c# 程序
如何查看 .NET 框架的版本
在资源管理器查看产品信息
查看系统安装软件的信息
第一个 C# 程序
cmd 中使用 csc 编译器编译 .cs 源文件
为 csc 编译器添加环境变量
永久设置系统环境变量
##################################################
.NET 框架
——————————
任何一台可以打现代游戏的 Windows 都可以运行 c# 程序
这不是吹牛
只是有 32 位和 64 位的区别而已
只要系统安装了对应的 .NET 框架 哪怕跑的是 Linux 都可以运行 c#
只不过要对应版本 例如你写的 .Net Framework 4.0 的程序要想运行在 2.0 的 Framework/框架 上是痴心妄想
不支持向下兼容 例如 XP 默认就没带 .net 框架
而 Vista 和 Windows 7 都带了框架 只是版本不同而已
——————————
如何查看 .NET 框架的版本
%%%%%
通过命令提示符
以管理员身份运行 cmd
输入该命令以查看:
reg query "HKLMSOFTWAREMicrosoftNet Framework SetupNDP" /s
如果是 4.X 的版本可以使用该命令查看:
reg query "HKLMSOFTWAREMicrosoftNet Framework SetupNDPv4" /s
示例如下:
Microsoft Windows [版本 6.3.9600]
(c) 2013 Microsoft Corporation。保留所有权利。
C:Windowssystem32>reg query "HKLMSOFTWAREMicrosoftNet Framework SetupNDP"
/s
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPCDF
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPCDFv4.0
NetTcpPortSharingInstalled REG_DWORD 0x1
HttpNamespaceReservationInstalled REG_DWORD 0x1
WMIInstalled REG_DWORD 0x1
SMSvcHostPath REG_SZ C:WindowsMicrosoft.NETFramework64v4.0.30319
NonHttpActivationInstalled REG_DWORD 0x1
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPv4
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPv4Client
Version REG_SZ 4.8.03761
CBS REG_DWORD 0x1
TargetVersion REG_SZ 4.0.0
Install REG_DWORD 0x1
InstallPath REG_SZ C:WindowsMicrosoft.NETFramework64v4.0.30319
Servicing REG_DWORD 0x0
Release REG_DWORD 0x80eb1
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPv4Client1033
Version REG_SZ 4.8.03761
CBS REG_DWORD 0x1
TargetVersion REG_SZ 4.0.0
Install REG_DWORD 0x1
Servicing REG_DWORD 0x0
Release REG_DWORD 0x80eb1
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPv4Client2052
Version REG_SZ 4.5.51641
CBS REG_DWORD 0x1
TargetVersion REG_SZ 4.0.0
Install REG_DWORD 0x1
Servicing REG_DWORD 0x0
Release REG_DWORD 0x5c733
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPv4Full
Version REG_SZ 4.8.03761
CBS REG_DWORD 0x1
TargetVersion REG_SZ 4.0.0
Install REG_DWORD 0x1
InstallPath REG_SZ C:WindowsMicrosoft.NETFramework64v4.0.30319
Servicing REG_DWORD 0x0
Release REG_DWORD 0x80eb1
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPv4Full1033
Version REG_SZ 4.8.03761
CBS REG_DWORD 0x1
TargetVersion REG_SZ 4.0.0
Install REG_DWORD 0x1
Servicing REG_DWORD 0x0
Release REG_DWORD 0x80eb1
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPv4Full2052
Version REG_SZ 4.5.51641
CBS REG_DWORD 0x1
TargetVersion REG_SZ 4.0.0
Install REG_DWORD 0x1
Servicing REG_DWORD 0x0
Release REG_DWORD 0x5c733
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPv4.0
(默认) REG_SZ deprecated
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPv4.0Client
Version REG_SZ 4.0.0.0
Install REG_DWORD 0x1
C:Windowssystem32>reg query "HKLMSOFTWAREMicrosoftNet Framework SetupNDPv
4" /s
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPv4Client
Version REG_SZ 4.8.03761
CBS REG_DWORD 0x1
TargetVersion REG_SZ 4.0.0
Install REG_DWORD 0x1
InstallPath REG_SZ C:WindowsMicrosoft.NETFramework64v4.0.30319
Servicing REG_DWORD 0x0
Release REG_DWORD 0x80eb1
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPv4Client1033
Version REG_SZ 4.8.03761
CBS REG_DWORD 0x1
TargetVersion REG_SZ 4.0.0
Install REG_DWORD 0x1
Servicing REG_DWORD 0x0
Release REG_DWORD 0x80eb1
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPv4Client2052
Version REG_SZ 4.5.51641
CBS REG_DWORD 0x1
TargetVersion REG_SZ 4.0.0
Install REG_DWORD 0x1
Servicing REG_DWORD 0x0
Release REG_DWORD 0x5c733
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPv4Full
Version REG_SZ 4.8.03761
CBS REG_DWORD 0x1
TargetVersion REG_SZ 4.0.0
Install REG_DWORD 0x1
InstallPath REG_SZ C:WindowsMicrosoft.NETFramework64v4.0.30319
Servicing REG_DWORD 0x0
Release REG_DWORD 0x80eb1
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPv4Full1033
Version REG_SZ 4.8.03761
CBS REG_DWORD 0x1
TargetVersion REG_SZ 4.0.0
Install REG_DWORD 0x1
Servicing REG_DWORD 0x0
Release REG_DWORD 0x80eb1
HKEY_LOCAL_MACHINESOFTWAREMicrosoftNet Framework SetupNDPv4Full2052
Version REG_SZ 4.5.51641
CBS REG_DWORD 0x1
TargetVersion REG_SZ 4.0.0
Install REG_DWORD 0x1
Servicing REG_DWORD 0x0
Release REG_DWORD 0x5c733
C:Windowssystem32>
%%%%%
在资源管理器查看产品信息
文件管理器中进入该路径 可以看到 32 位和 64 位的 .net 框架:
C:WindowsMicrosoft.NETFramework
在 版本目录 中找到 C# 编译器右击选择 属性 查看 详细信息 选项卡中的 产品版本:
这里是 4.8
%%%%%
查看系统安装软件的信息
在 程序和功能 这个界面直接就能找到安装的框架版本:
##################################################
第一个 C# 程序——————————
cmd 中使用 csc 编译器编译 .cs 源文件
所以说我们不需要安装任何 IDE 就能编写编译 c# 程序
在 C 盘根目录创建一个 .cs 结尾的文件 这是 c# 程序的源文件
然后在其中编写代码:
using System;
class Program
{
static void Main(string[] args)
{
Console.WriteLine( "Hello,World!" );
Console.ReadLine();
}
}
保存退出 我这里保存为 hw.cs 文件:
以管理员身份运行 cmd
进入 .NET 安装目录:
cd C:WindowsMicrosoft.NET
进入 64 位的 .NET 框架:
cd Framework64
进入对应版本目录 可以按 TAB 键补全:
cd v4.0.30319
最后找到 csc.exe 编译器 这是 c# 编译器:
C:Windowssystem32>cd C:WindowsMicrosoft.NET
C:WindowsMicrosoft.NET>cd Framework64
C:WindowsMicrosoft.NETFramework64>cd v4.0.30319
C:WindowsMicrosoft.NETFramework64v4.0.30319>dir csc.exe
驱动器 C 中的卷是 System_8.1
卷的序列号是 B6F6-A064
C:WindowsMicrosoft.NETFramework64v4.0.30319 的目录
2022/05/15 22:40 2,758,280 csc.exe
1 个文件 2,758,280 字节
0 个目录 6,294,503,424 可用字节
C:WindowsMicrosoft.NETFramework64v4.0.30319>
开始编译我们编写的 .cs 文件 如下就是编译成功:
C:WindowsMicrosoft.NETFramework64v4.0.30319>csc C:hw.cs Microsoft (R) Visual C# Compiler version 4.8.3761.0 for C# 5 Copyright (C) Microsoft Corporation. All rights reserved. This compiler is provided as part of the Microsoft (R) .NET Framework, but only supports language versions up to C# 5, which is no longer the latest version. Fo r compilers that support newer versions of the C# programming language, see http ://go.microsoft.com/fwlink/?LinkID=533240 C:WindowsMicrosoft.NETFramework64v4.0.30319>
csc 是 c# 编译器
C:hw.cs 是 c 盘下的 .cs 源文件
默认编译到当前目录下也就是
C:WindowsMicrosoft.NETFramework64v4.0.30319
cmd 必须是管理员身份不然会出现访问错误:
Microsoft Windows [版本 6.3.9600]
(c) 2013 Microsoft Corporation。保留所有权利。
C:Usersbyme>cd C:WindowsMicrosoft.NETFramework64v4.0.30319
C:WindowsMicrosoft.NETFramework64v4.0.30319>csc C:hw.cs
Microsoft (R) Visual C# Compiler version 4.8.3761.0
for C# 5
Copyright (C) Microsoft Corporation. All rights reserved.
This compiler is provided as part of the Microsoft (R) .NET Framework, but only
supports language versions up to C# 5, which is no longer the latest version. Fo
r compilers that support newer versions of the C# programming language, see http
://go.microsoft.com/fwlink/?LinkID=533240
CSC97CE4F50C8A4D9DA23C52C950AE2F41.TMP: error CS1567: Error generating Win32
resource: 拒绝访问。
warning CS1610: Unable to delete temporary file
'c:WindowsMicrosoft.NETFramework64v4.0.30319CSC97CE4F50C8A4D9DA23C5
2C950AE2F41.TMP' used for default Win32 resource --
系统找不到指定的文件。
C:WindowsMicrosoft.NETFramework64v4.0.30319>
找到编译的程序 输入程序名就可以运行:
C:WindowsMicrosoft.NETFramework64v4.0.30319>dir hw.exe
驱动器 C 中的卷是 System_8.1
卷的序列号是 B6F6-A064
C:WindowsMicrosoft.NETFramework64v4.0.30319 的目录
2022/06/27 17:18 3,584 hw.exe
1 个文件 3,584 字节
0 个目录 6,292,127,744 可用字节
C:WindowsMicrosoft.NETFramework64v4.0.30319>hw.exe
Hello,World!
C:WindowsMicrosoft.NETFramework64v4.0.30319>hw
Hello,World!
C:WindowsMicrosoft.NETFramework64v4.0.30319>
也可以在文件管理器中找到编译出来的程序 双击运行:
——————————
为 csc 编译器添加环境变量
一般来说离开了安装目录就找不到编译器了:
C:WindowsMicrosoft.NETFramework64v4.0.30319>d: D:>csc 'csc' 不是内部或外部命令,也不是可运行的程序 或批处理文件。 D:>
%%%%%
临时设置环境变量
此时使用 set 命令查看一下系统环境变量:
D:>set ALLUSERSPROFILE=C:ProgramData APPDATA=C:UsersbymeAppDataRoaming CLASSPATH=.;D:Javajdk1.7.0_79lib;D:Javajdk1.7.0_79libtools.jar CommonProgramFiles=C:Program FilesCommon Files CommonProgramFiles(x86)=C:Program Files (x86)Common Files CommonProgramW6432=C:Program FilesCommon Files COMPUTERNAME=LILIAN ComSpec=C:Windowssystem32cmd.exe FP_NO_HOST_CHECK=NO HOMEDRIVE=C: HOMEPATH=Usersbyme JAVA_HOME=D:Javajdk1.7.0_79 LOCALAPPDATA=C:UsersbymeAppDataLocal LOGONSERVER=\LILIAN MOZ_PLUGIN_PATH=C:Program Files (x86)Foxit SoftwareFoxit PDF Readerplugins NUMBER_OF_PROCESSORS=4 OS=Windows_NT Path=C:Program Files (x86)VMwareVMware Workstationbin;C:Program Files (x86 )NVIDIA CorporationPhysXCommon;C:Program Files (x86)InteliCLS Client;C:P rogram FilesInteliCLS Client;C:Windowssystem32;C:Windows;C:WindowsSystem 32Wbem;C:WindowsSystem32WindowsPowerShellv1.0;C:Program Files (x86)Intel OpenCL SDK2.0binx86;C:Program Files (x86)IntelOpenCL SDK2.0binx64;C:P rogram Filesqemu;D:Javajdk1.7.0_79bin;D:Javajdk1.7.0_79jrebin; PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC PROCESSOR_ARCHITECTURE=AMD64 PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 42 Stepping 7, GenuineIntel PROCESSOR_LEVEL=6 PROCESSOR_REVISION=2a07 ProgramData=C:ProgramData ProgramFiles=C:Program Files ProgramFiles(x86)=C:Program Files (x86) ProgramW6432=C:Program Files PROMPT=$P$G PSModulePath=C:Windowssystem32WindowsPowerShellv1.0Modules PUBLIC=C:UsersPublic SystemDrive=C: SystemRoot=C:Windows TEMP=C:UsersbymeAppDataLocalTemp TMP=C:UsersbymeAppDataLocalTemp USERDOMAIN=lilian USERDOMAIN_ROAMINGPROFILE=lilian USERNAME=byme USERPROFILE=C:Usersbyme VBOX_MSI_INSTALL_PATH=C:Program FilesOracleVirtualBox windir=C:Windows D:>
太多了 单独查看 Path 的值:
D:>set Path Path=C:Program Files (x86)VMwareVMware Workstationbin;C:Program Files (x86 )NVIDIA CorporationPhysXCommon;C:Program Files (x86)InteliCLS Client;C:P rogram FilesInteliCLS Client;C:Windowssystem32;C:Windows;C:WindowsSystem 32Wbem;C:WindowsSystem32WindowsPowerShellv1.0;C:Program Files (x86)Intel OpenCL SDK2.0binx86;C:Program Files (x86)IntelOpenCL SDK2.0binx64;C:P rogram Filesqemu;D:Javajdk1.7.0_79bin;D:Javajdk1.7.0_79jrebin; PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC D:>
将 csc 所在目录添加进环境变量:
D:>set path=%path%;C:WindowsMicrosoft.NETFramework64v4.0.30319 D:>set path Path=C:Program Files (x86)VMwareVMware Workstationbin;C:Program Files (x86 )NVIDIA CorporationPhysXCommon;C:Program Files (x86)InteliCLS Client;C:P rogram FilesInteliCLS Client;C:Windowssystem32;C:Windows;C:WindowsSystem 32Wbem;C:WindowsSystem32WindowsPowerShellv1.0;C:Program Files (x86)Intel OpenCL SDK2.0binx86;C:Program Files (x86)IntelOpenCL SDK2.0binx64;C:P rogram Filesqemu;D:Javajdk1.7.0_79bin;D:Javajdk1.7.0_79jrebin;;C:Window sMicrosoft.NETFramework64v4.0.30319 PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC D:>
%%%%%
永久设置系统环境变量
命令如下:
set "path" "%path%;C:WindowsMicrosoft.NETFramework64v4.0.30319"
示例:
C:Usersbyme>setx "path" "%path%;C:WindowsMicrosoft.NETFramework64v4.0.3031 9" 成功: 指定的值已得到保存。 C:Usersbyme>set path Path=C:Program Files (x86)VMwareVMware Workstationbin;C:Program Files (x86 )NVIDIA CorporationPhysXCommon;C:Program Files (x86)InteliCLS Client;C:P rogram FilesInteliCLS Client;C:Windowssystem32;C:Windows;C:WindowsSystem 32Wbem;C:WindowsSystem32WindowsPowerShellv1.0;C:Program Files (x86)Intel OpenCL SDK2.0binx86;C:Program Files (x86)IntelOpenCL SDK2.0binx64;C:P rogram Filesqemu;D:Javajdk1.7.0_79bin;D:Javajdk1.7.0_79jrebin; PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC C:Usersbyme>
此时关掉当前终端 重新打开一个 cmd 终端 编译器可以在任何地方使用:
Microsoft Windows [版本 6.3.9600] (c) 2013 Microsoft Corporation。保留所有权利。 C:Usersbyme>csc Microsoft (R) Visual C# Compiler version 4.8.3761.0 for C# 5 Copyright (C) Microsoft Corporation. All rights reserved. This compiler is provided as part of the Microsoft (R) .NET Framework, but only supports language versions up to C# 5, which is no longer the latest version. Fo r compilers that support newer versions of the C# programming language, see http ://go.microsoft.com/fwlink/?LinkID=533240 warning CS2008: No source files specified error CS1562: Outputs without source must have the /out option specified C:Usersbyme>
之后就可以随意编译 c# 源文件啦:
Microsoft Windows [版本 6.3.9600]
(c) 2013 Microsoft Corporation。保留所有权利。
C:Windowssystem32>cd ..
C:Windows>cd ..
C:>dir hw.cs
驱动器 C 中的卷是 System_8.1
卷的序列号是 B6F6-A064
C: 的目录
2022/06/27 17:16 168 hw.cs
1 个文件 168 字节
0 个目录 6,312,771,584 可用字节
C:>dir hw.exe
驱动器 C 中的卷是 System_8.1
卷的序列号是 B6F6-A064
C: 的目录
找不到文件
C:>csc hw.cs
Microsoft (R) Visual C# Compiler version 4.8.3761.0
for C# 5
Copyright (C) Microsoft Corporation. All rights reserved.
This compiler is provided as part of the Microsoft (R) .NET Framework, but only
supports language versions up to C# 5, which is no longer the latest version. Fo
r compilers that support newer versions of the C# programming language, see http
://go.microsoft.com/fwlink/?LinkID=533240
C:>dir hw.exe
驱动器 C 中的卷是 System_8.1
卷的序列号是 B6F6-A064
C: 的目录
2022/06/27 18:01 3,584 hw.exe
1 个文件 3,584 字节
0 个目录 6,312,632,320 可用字节
C:>hw
Hello,World!
C:>
活动地址:毕业季·进击的技术er


![[第一个 C# 程序]-C# 程序可以运行在任何一台可以打游戏的 Windows 机器上 [第一个 C# 程序]-C# 程序可以运行在任何一台可以打游戏的 Windows 机器上](http://www.mshxw.com/aiimages/31/1023334.png)
