赤手空拳编写C#代码
有时候服务器上并没有安装任何IDE或典型的代码编辑器,只能完全手写C#代码。
不妨假设一台全新的PC,较新版本的Windows自带了.net框架,无需开发工具即可编程了。
除了以往的Bat批处理、VBS脚本,以及利用浏览器支持编写简单的程序,连C#、VB.net等编译型语言也可以直接开发了。
设置环境变量
为了方便启动C#的编辑器,而无需每次输入完整路径,我们可以将csc.exe加入系统默认搜索的路径。
1.搜索csc.exe的路径
比如是C:\Windows\Microsoft.NET\Framework\v4.0.30319 将其加入系统的环境变量
2. 如果需要始终生效则需要在环境变量中新建一个变量path内容为路径C:\Windows\Microsoft.NET\Framework\v4.0.30319

如果临时使用只需在cmd命令行输入 path=C:\Windows\Microsoft.NET\Framework\v4.0.30319

这样在任何cmd窗口下就可以直接使用csc命令了。
编辑器设置
干净的系统没有VS、没有Vim,连个Word都没有,Win7的话连个命令行edit都没有。这样编辑器只能选择最原始的记事本或者写字板了。
首先设置适合编程的等宽字体,如Consolas。
在任意目录下,Shift+右键可增加在此处打开命令窗口,省略当前路径的输入。
写字板
优点:支持文字颜色修改(也得手动更改,可以做辅助提示使用)
文字处理更为丰富,支持文字快捷键,如Ctrl+B加粗、Ctrl+U下划线等
可缩放文字,Ctrl+滚轮
Tab可调整为4个空格,右键-段落-选项卡-制表符宽度

可通过
为多行增减缩进。等等方便编程的功能。
记事本
优点:可在任务栏显示显示当前行列号
可用Ctrl+G跳转到指定行,方便根据调试信息快速定位。

有F5插入 当前日期等快捷键,但快捷键功能较弱。
缺点是无法调整Tab长度,只能默认8个空格等。
命令行
因为手写简短的代码,就省略了名称空间、public等信息,怎么简单怎么写。

using System;
class Test
{
public static void Main()
{
Console.WriteLine("Hello World!");
}
}
cmd命令行输入csc 1.cs 即可编译,在本目录下生成1.exe可执行文件

生成WinForm窗体
简短的代码生成Windows窗体
using System;
using System.Windows.Forms;
class Form1 : Form
{
public static void Main()
{
Application.Run(new Form1());
}
}


为WinForm窗体添加控件和事件响应
using System;
using System.Windows.Forms;
class Form1 : Form
{
Button button1 = new Button();//声明控件
Form1()
{
Controls.Add(button1);//添加控件
this.Text = "窗体标题";
button1.Text = "按钮";
button1.Click += ClickButton1;//绑定按钮事件
}
void ClickButton1(object sender, EventArgs e)//注意事件的2个参数
{
MessageBox.Show("弹出信息");
}
public static void Main()//入口函数
{
Application.Run(new Form1());
}
}

GDI
赤手空拳编写C#代码的更多相关文章
- [转]通过Visual Studio为Linux编写C++代码
Build 2016大会上Microsoft首次公布的Visual Studio 2015扩展提供了在VS2015中编写C++代码,随后通过Linux/UNIX计算机进行编译和执行的能力.这种想法非常 ...
- 基于CkEditor实现.net在线开发之路(2)编写C#代码,怎么调用它。
上一章简约的介绍了CkEditor编辑器,可以编辑js逻辑代码,css,html,C#代码,这章我根据实际例子,讲解怎么编写C#代码和怎么调用它. 大家都还记得刚刚接触程序编时的hello Word吧 ...
- 解决VS2012编写JQuery代码不能智能提示的问题(其他js库的代码提示设置估计类似)
VS默认设置下编写jQuery代码是这样的: 解决办法: 1.在项目的"管理NuGet程序包"中安装JQuery: 2.打开:工具 -> 选项 -> 文本编辑器 -&g ...
- JNI技术基础(2)——从零开始编写JNI代码
书接上文: <JNI技术基础(1)——从零开始编写JNI代码> 2.编译源程序HelloWorld.java并生成HelloWorld.class 3.生成头文件HelloWorld.h ...
- 最新的JavaScript核心语言标准——ES6,彻底改变你编写JS代码的方式!【转载+整理】
原文地址 本文内容 ECMAScript 发生了什么变化? 新标准 版本号6 兑现承诺 迭代器和for-of循环 生成器 Generators 模板字符串 不定参数和默认参数 解构 Destructu ...
- AppleWatch开发教程之Watch应用对象新增内容介绍以及编写运行代码
AppleWatch开发教程之Watch应用对象新增内容介绍以及编写运行代码 添加Watch应用对象时新增内容介绍 Watch应用对象添加到创建的项目中后,会包含两个部分:Watch App 和 Wa ...
- mvn编写主代码与测试代码
maven编写主代码与测试代码 3.2 编写主代码 项目主代码和测试代码不同,项目的主代码会被打包到最终的构件中(比如jar),而测试代码只在运行测试时用到,不会被打包.默认情况下,Maven假设项目 ...
- [JS进阶] 编写可维护性代码 (1)
今天的web应用大至成千上万行的javascript代码,执行各种复杂的过程,这种演化让我们开发者必须得对可维护性有一定的认识!编写可维护性代码很重要,很多情况下我们是以他人的工作成果为基础,确保代码 ...
- Java认证:JavaRunnable线程编写接口代码
Java认证:JavaRunnable线程编写接口代码.JavaRunnable线程如何才能更好的适应目前的编程环境呢?下面我们就看看如何才能更好的进行相关环境.希望下面的文章对大家有所帮助.Java ...
随机推荐
- sqlserver 四舍五入(转)
select cast(round(12.5,2) as numeric(5,2)) 解释: round()函数,是四舍五入用,第一个参数是我们要被操作的数据,第二个参数是设置我们四舍五入 ...
- JS事件分析
1.注册事件 1.1 使用HTML元素的事件属性 <div id='myDiv' style="width:100px;height:100px;background-color:re ...
- 【转】使用git、git-flow与gitlab工作
转自:http://www.tuicool.com/articles/BZJRj2 使用git.git-flow与gitlab工作 时间 2013-11-02 00:40:39 Axb的自我修养 原 ...
- Xcode编译错误和警告汇总<转>
1.error: macro names must be identifiers YourProject_prefix.pch 原因: 因为你弄脏了预处理器宏,在它处于<Multiple Val ...
- ionic环境搭建和安装
1. 安装node环境 nodeJs环境的安装很简单,去官网下载最新版的NodeJs直接安装即可. Node官网: https://nodejs.org/ 安装完成后配置环境变量,计算机->属性 ...
- Android系统框架
从上图中可以看出,Android系统架构为四层结构,从上层到下层分别是应用程序层.应用程序框架层.系统运行库层以及Linux内核层 应用程序层: 简单说就是我们用户肉眼能看到的应用程序,如SMS短信客 ...
- GT-n8000平板开机密码忘记 解决办法
开机密码忘记了 1: 关机 (不需要连接电脑) 2: 音量上 开机键 一起按住 别松手 直至 进入 英文界面 Android system recovery <3e> 备注:音量键方向错误 ...
- python字典循环小点
对于字典数据量不大时候 首先会将字典转换成列表,写到内存,如果几百万条,就会减慢速度 for k,v in dic:print k,v 可以这样 for k in dic:print k,dic[ ...
- web双机热备添加心跳检测ip的时候填了网关导致外网ip不能上网
web双机热备添加心跳检测ip的时候填了网关导致外网ip不能上网 1 连接 机器其他机器, 通过机房做的服务器的局域网,ssh到这台的局域网ip,删除网卡配置文件的网关哪一行,重启网卡. 2 如果没有 ...
- linux内核编译相关
参考:http://www.arm.linux.org.uk/docs/kerncomp.php 一. 内核编译1) linux 2.4make clean/make mrpropermake dep ...