用下面的代码:

using System;
using System.Diagnostics;

class Class1
{
    [STAThread]
    
static void Main(string[] args)
    {                
        TextWriterTraceListener myWriter 
= 
            
new TextWriterTraceListener(System.Console.Out);
        Debug.Listeners.Add(myWriter);
        Console.WriteLine(
"Console.WriteLine is always displayed");
        Method1();
        Method2();
    }
    
    [Conditional(
"CONDITION1")]
    
public static void Method1()
    {
        Debug.Write(
"Method1 - DEBUG and CONDITION1 are specified\n");
        Trace.Write(
"Method1 - TRACE and CONDITION1 are specified\n");
    }
    
    [Conditional(
"CONDITION1"), Conditional("CONDITION2")]    
    
public static void Method2()
    {
        Debug.Write(
"Method2 - DEBUG, CONDITION1 or CONDITION2 are specified\n");
    }
}

用下面的命令行:

csc /target:exe /d:CONDITION1,DEBUG,TRACE /out:CASCS.exe CAS.cs

msdn给出的结果如下:

Console.WriteLine is always displayed
Method1 
- DEBUG and CONDITION1 are specified
Method1 
- TRACE and CONDITION1 are specified
Method2 
- DEBUG, CONDITION1 or CONDITION2 are specified

在我的机器上的结果如下:

Console.WriteLine is always displayed
Method1 
- DEBUG and CONDITION1 are specified
Method2 
- DEBUG, CONDITION1 or CONDITION2 are specified

现在问题有三个:
(1) 为什么我的输出结果不一样,难道我没有开Trace选项,Trace选项该怎么开,打开Trace选项以后有什么作用?
(2) 为什么命令行中是out:CASCS.exe,可是输出的文件名称却是CAS.exe那?
(3) 我用csc /target:exe /d:CONDITION2,DEBUG,TRACE /out: F:\CscTest\bin\CASCS.exe F:\CscTest\CAS.cs
结果提示:

fatal error CS2005: 缺少对“/out:”命令行选项的文件规范
fatal error CS2008: 未指定输入

那么我该怎么样将生成的exe文件输出到指定的目录中那?
posted on 2006-03-29 10:54  今夜太冷  阅读(858)  评论(2)    收藏  举报