社区
C#
帖子详情
如何做个IDE?(用C#开发,但不仅限于C#)
lydavid
2004-03-26 01:58:40
一直在用各种IDE开发,可就是想不明白如何实现一个,特向各位请教:)。最好讲讲开发的原理和实现的关键(概括);或者某一项功能的原理和实现,比如界面的技巧、跟踪调试、编译技巧等等等等。我知道这个题目可能开的太大了,所以如果你知道哪怕一点点,也写下来,大家共同交流,共同提高,在此谢过!!!!
...全文
277
17
打赏
收藏
如何做个IDE?(用C#开发,但不仅限于C#)
一直在用各种IDE开发,可就是想不明白如何实现一个,特向各位请教:)。最好讲讲开发的原理和实现的关键(概括);或者某一项功能的原理和实现,比如界面的技巧、跟踪调试、编译技巧等等等等。我知道这个题目可能开的太大了,所以如果你知道哪怕一点点,也写下来,大家共同交流,共同提高,在此谢过!!!!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
qiume
2004-03-26
打赏
举报
回复
先看看编译原理,可能会有用
qjoe0516
2004-03-26
打赏
举报
回复
顶
lydavid
2004-03-26
打赏
举报
回复
大家在给点意见呀
「已注销」
2004-03-26
打赏
举报
回复
可以模仿SharpDevelop的源码:
http://www.icsharpcode.net/
不过,要看懂这些源码,也不容易:)
所以一般配上一本书,是#Develop的作者写的<C#软件项目开发全程剖析>
zdcscc
2004-03-26
打赏
举报
回复
学习
rock1981
2004-03-26
打赏
举报
回复
学习
Montaque
2004-03-26
打赏
举报
回复
界面上比较容易,关键是如何去编译。
hunterzhi
2004-03-26
打赏
举报
回复
帮你顶
gengwei80
2004-03-26
打赏
举报
回复
学习
triout
2004-03-26
打赏
举报
回复
学习
conquersky
2004-03-26
打赏
举报
回复
呵呵 学习来了
newman0708
2004-03-26
打赏
举报
回复
用巴写一个大框架,具体的数据从不同的xml中读取(c++,c,java,html...),对不同的语言就用不同的xml.
HNU
2004-03-26
打赏
举报
回复
我加你了,111554**
wolftop
2004-03-26
打赏
举报
回复
如果要全部源码可以家我QQ~!
183187865
wolftop
2004-03-26
打赏
举报
回复
比如做个C#IDE!
也就是在程序中调用CSC这个控制台编译器!并把所有命令都在调用此工具时带入命令行!然后可以把一些VS提供的工具结合~!
给你个小例子:(片断代码)!如果想要全部的,请加我QQ!~我自己的写的IDE,能调试C#和ASPX;
if((!this.ActiveMdiChild.Text.EndsWith("aspx")) && (!this.ActiveMdiChild.Text.EndsWith("aspX")))
{
this.runTextBox1.Text="±àÒë½á¹û:\n";
Process p=new Process();
p.StartInfo.FileName = pz.textBox1.Text;
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.WindowStyle = ProcessWindowStyle.Minimized;
try
{
if(this.isOpen)
{
StreamWriter Sw=File.CreateText(this.ActiveMdiChild.Text);
Form tempChild = this.ActiveMdiChild;
for(int i=0;i<tempChild.Controls.Count;i++)
{
if(tempChild.Controls[i] is RichTextBox)
{
Sw.Write(tempChild.Controls[i].Text);
Sw.Close();
}
}
p.StartInfo.Arguments="/t:winexe /out:"+"\""+this.ActiveMdiChild.Text+"\""+".exe"+" "+"\""+this.ActiveMdiChild.Text+"\"";
p.Start();
if((this.runTextBox1.Text+=p.StandardOutput.ReadToEnd())==null)
this.runTextBox1.Text+="ÎÞ´íÎó.\n\t\t¹§Ï²Äú!±àÒë³É¹¦~!";
p.WaitForExit();
}
else
{
System.IO.Directory.CreateDirectory("C:\\cstemp");
string fname="c:\\cstemp\\test.cs";
isCreateCs=true;
StreamWriter sw=File.CreateText(fname);
Form tempChild = this.ActiveMdiChild;
for(int i=0;i<tempChild.Controls.Count;i++)
{
if(tempChild.Controls[i] is RichTextBox)
{
sw.Write(tempChild.Controls[i].Text);
sw.Close();
this.runTextBox1.Text="±àÒë½á¹û:\n";
p.StartInfo.Arguments="/t:winexe /out:"+fname+".exe"+" "+fname;
p.Start();
if((this.runTextBox1.Text+=p.StandardOutput.ReadToEnd())==null)
this.runTextBox1.Text+="ÎÞ´íÎó.\n\t\t¹§Ï²Äú!±àÒë³É¹¦~!";
p.WaitForExit();
}
}
}
deleteFile();
}
catch
{
MessageBox.Show("Çë¼ì²ìÄúµÄ±àÒëÆ÷ÊÇ·ñ´æÔÚ£¬»òÅäÖ÷¾¶ÓÐ´í¡£","±àÒëÆ÷´íÎó");
}
}
else
MessageBox.Show("Äú±àÒëµÄÊÇASP.NET»òJscriptÎļþ£¬ÇëÑ¡ASPXµ÷ÊÔÏî.","±àÒëÆ÷Ñ¡Ôñ´íÎó");
}
lydavid
2004-03-26
打赏
举报
回复
先谢谢各位捧场!!SharpDevelop的源码已经下了,正在研究(汗)。
TO:newman0708
你说的我不太明白,希望详细点,呵呵
TO:Monqatue
Vs.net 里那个控件的Toolbar是怎么实现的?望指点一二。:)
ROTO:qiume
我不是想写编译器,只是一个IDE,谢谢讨论
athossmth
2004-03-26
打赏
举报
回复
学习
Visual C#.NET
开发
实践:Visual C#.NET
开发
实践.rar
Visual C#.NET
开发
实践:Visual C#.NET
开发
实践.rar
一个用
C#
实现的简单记事本
一个在visual stdio 2005环境下实现的记事本
c#
专业项目实例
开发
c#
专业项目实例
开发
c#
专业项目实例
开发
c#
专业项目实例
开发
c#
专业项目实例
开发
c#
专业项目实例
开发
C#
编译器
IDE
C#
编译器
IDE
C#
开发
实例大全(基础卷)源码
由于《
C#
开发
实例大全(基础卷)》随书源码有2.9G,下载文件里是百度网盘链接,若遇链接失效请联系内附QQ
C#
111,097
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章