Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/302.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Console.CursorTop内置记事本++;安慰_C#_Console_Notepad++ - Fatal编程技术网

C# Console.CursorTop内置记事本++;安慰

C# Console.CursorTop内置记事本++;安慰,c#,console,notepad++,C#,Console,Notepad++,在完成一个基本的控制台应用程序后,我想使用运行Notepad++来运行它,但该应用程序试图用它产生的输出覆盖控制台的一些部分。具体而言,它执行以下操作: Console.SetCursorPosition(0, ( Console.CursorTop == 0 ? 0 : Console.CursorTop - (int)Math.Ceiling((input.Length + 1) / 80.0) ) ); 这对于标准控制台窗口很好,但在记事本++中通过NppExec控制台运

在完成一个基本的控制台应用程序后,我想使用运行Notepad++来运行它,但该应用程序试图用它产生的输出覆盖控制台的一些部分。具体而言,它执行以下操作:

Console.SetCursorPosition(0, (
  Console.CursorTop == 0 ? 0 :
    Console.CursorTop - (int)Math.Ceiling((input.Length + 1) / 80.0)
  )
);
这对于标准控制台窗口很好,但在记事本++中通过NppExec控制台运行时,会抛出以下错误:

“Console.CursorTop”引发了类型为“System.IO.IOException”的异常
句柄无效

现在,如果
Console.CursorTop
无效(运行正常),我将跳过光标移动。但是,如果有一种方法可以在Notepad++控制台中移动光标,那就太完美了。请注意,我并不希望在编写输出之前清除整个控制台


有没有一种方法可以使用C#console应用程序在Notepad++控制台中移动光标?如果没有,是否有办法通过C#console应用程序覆盖Notepad++控制台中的用户输入?如果这是我能得到的最好结果,我甚至可以接受在写入输出之前将光标返回到行的开头。

Erm,记事本++没有控制台,上次我还是看了。当然,像CursorTop这样的成员失败了,但有一个例外。不清楚为什么在没有控制台的情况下尝试使用控制台。@HansPassant您是对的,这是来自扩展。我将更新问题以澄清这一点。