3

在通过谷歌搜索一段时间后,我决定在这里发布我的问题。
第一:我完全是 C# Noob。
我正在使用来自 Jitbit 的宏录制器,我别无选择使用不同的。问题出在宏记录器中,它缺少一些重要的东西。
就像将文本文件读入变量并通过剪贴板粘贴该变量一样 :-( 不过好消息是,该工具支持“某些”类型的本机 C# 代码

如果我打开 C# 命令,我会得到:

public class Program
{
    public static void Main()
    {
        System.Windows.Forms.MessageBox.Show("test");
    }
}

并且 C# 程序也必须遵循以下规则: => 此代码必须包含一个名为“Program”的类和一个静态方法“Main
”代码不遵循上述规则。
这是我发现并尝试过的:

using System;
using System.IO;
public class Program
{
    public static void Main()
    {
    // Read the file as one string.
    System.IO.StreamReader myFile =
     new System.IO.StreamReader("Counter.txt");
    string counter = myFile.ReadToEnd();

    myFile.Close();

    // Load string into clipboard
    Clipboard.SetDataObject( counter, true );
    }
}

我总是收到错误消息:“第 15 行:上下文中不存在名称剪贴板”?!?我希望有人可以解释一个菜鸟(我)什么是错的,什么是正确的代码。谢谢。

4

1 回答 1

3

添加参考System.Windows.Forms

using System;
using System.IO;
using System.Windows.Forms;

public class Program
{
    [STAThread]
    public static void Main()
    {
        Clipboard.SetDataObject(File.ReadAllText("Counter.txt"), true);
    }
}

请注意,要避免 ThreadStateException,您需要将 STAThread 属性应用于 Main() 函数

于 2013-08-28T08:27:25.680 回答