none
c#如何将原来form的项目变成console的项目?dll的项目怎么换成其他两个项目? RRS feed

  • 问题

  • 除了重新新建项目外,还有别的变更办法吗?觉得重新新建项目很烦,新建好还要把许多文件的代码复制过去。

    2009年8月28日 11:57

答案

  • 在项目上点右键->属性->应用程序选项卡->输出类型->控制台应用程序。
    知识改变命运,奋斗成就人生!
    • 已标记为答案 OpenNovo 2009年8月30日 6:44
    2009年8月28日 12:02
    版主
  • 你好!
         补充一下,更改了输出类型,一些代码也要自己改!麻烦程度和新建项目在复制代码类似!
    周雪峰
    • 已标记为答案 OpenNovo 2009年9月2日 23:42
    2009年8月28日 14:22
    版主
  • 您好,虽然我的方法不能马上解决问题。
    我还是想建议,在设计之初应考虑将变现的代码与其它代码(例如功能、业务逻辑等)相分离。放在不同的程序集中。
    当然这也不是一件简单的事,需要重构的技能和坚持。
    • 已标记为答案 OpenNovo 2009年8月30日 6:45
    2009年8月29日 10:18
    版主
  • 你好!
         可以考虑用多线程来解决界面无响应的问题!
    周雪峰
    • 已标记为答案 OpenNovo 2009年9月2日 23:42
    2009年8月30日 9:26
    版主

全部回复

  • 在项目上点右键->属性->应用程序选项卡->输出类型->控制台应用程序。
    知识改变命运,奋斗成就人生!
    • 已标记为答案 OpenNovo 2009年8月30日 6:44
    2009年8月28日 12:02
    版主
  • 你好!
         补充一下,更改了输出类型,一些代码也要自己改!麻烦程度和新建项目在复制代码类似!
    周雪峰
    • 已标记为答案 OpenNovo 2009年9月2日 23:42
    2009年8月28日 14:22
    版主
  • 您好,虽然我的方法不能马上解决问题。
    我还是想建议,在设计之初应考虑将变现的代码与其它代码(例如功能、业务逻辑等)相分离。放在不同的程序集中。
    当然这也不是一件简单的事,需要重构的技能和坚持。
    • 已标记为答案 OpenNovo 2009年8月30日 6:45
    2009年8月29日 10:18
    版主
  • 你好,可以在WinForm程序中使用控制台(console)作为输出窗口。http://www.cnblogs.com/gster/archive/2009/04/28/1444745.html
    jon.valett@gmail.com
    2009年8月29日 15:12
    版主
  • 知道,我的更经常的情况出现在刚新建好,然后发现自己新建错了;如果是你提醒的这种情况,我宁愿重新写。谢谢!
    2009年8月30日 6:45
  • 想法不错,我现在的做法是把主要功能放在dll中,对于需要单独调试的地方,就另写一个console去调用这个dll;这样,随便我外围如何改,都可以去调用相同的功能。而且,我用静态,用的比需实例化的多(自认为这样节约资源,但也明显不能同时调用了)。
    2009年8月30日 6:47
  • 说到这个,我想问你另一个问题了:console可以实时答应状态情况,但如果用winform的textbox在打印频度较快的内容时,会出现界面锁死的情况。请问这个如何解决?比方我要扫描一个目录,我只能看到搜索的最后一条记录,前面的记录,winform都是一块空白的锁死。
    2009年8月30日 6:51
  • 你好!
         可以考虑用多线程来解决界面无响应的问题!
    周雪峰
    • 已标记为答案 OpenNovo 2009年9月2日 23:42
    2009年8月30日 9:26
    版主
  • 多线程可真有难度啊!接下来是想用多线程,但怎么实现界面的多线程呢?另外,想flashget这种多点下载的形式,比方我想做一个线程,只要cpu或网卡还有余量,我就新建尽可能令其满负荷的进程,有这样的办法吗?不用于攻击,只要达到80%的利用率就行了,我现在设计下载程序,如果可以的话,我就可以动态使6-10个进程同时下载不同的程序了,以此降低我等待的时间。有办法吗?另外,进程间通信怎么做?谢谢!
    2009年8月30日 13:24
  • 有什么方法可以避免用多线程来解决界面无响应?WPF可以吗?毕竟写进程太难了,似乎要对执行的东西做很高的抽象;且方法不能带参数,这个光设计起来就有难度的。
    2009年9月3日 0:06
  • 没有了,必须要多线程来解决!
    周雪峰
    2009年9月3日 2:44
    版主