Tag: console application

使用参数在C#中运行控制台应用程序

如何在C#中运行控制台应用程序,将参数传递给它,并以Unicode格式获取应用程序的结果? Console.WriteLine用于控制台应用程序。 重要的一点是在Console Application中编写Unicode。

ClickOnce文件关联

我有一个控制台应用程序,我正在使用ClickOnce进行部署。 用户安装程序后,将设置关联,但关联的程序是安装程序(ClickOnce应用程序部署支持库),而不是实际程序。 如何将关联作为实际程序而不是安装程序? 我已经从下面的app.manifest中包含了fileAssociation节点。 如果您对此有任何提示,请与我们联系。 谢谢。 在Windows XP,Vista,Windows 7等3台不同的计算机上进行了测试。信任级别是完全信任的。 自动更新设置为启动预启动。

如果文件夹包含空格,如何处理文件路径中的空格?

public static void launchProcess(string processName, string arguments, out string output) { Process p = new Process { StartInfo = { UseShellExecute = false, RedirectStandardOutput = true, FileName = processName, Arguments = arguments } }; p.Start(); output = p.StandardOutput.ReadToEnd(); p.WaitForExit(); } 如果我的参数包含文件名,例如: D:\Visual Studio Projects\ProjectOnTFS\ProjectOnTFS 然后我得到错误:

.Net控制台应用程序无法启动控制台

我有一个控制台应用程序,我用来通过Windows调度程序运行预定的作业。 与应用程序之间的所有通信都在电子邮件,事件记录,数据库日志中。 有什么方法可以抑制控制台窗口的出现吗?

如何从Windows窗体执行控制台应用程序?

我想从Windows窗体加载事件运行控制台应用程序(例如app.exe)。 我尝试过System.Diagnostics.Process.Start(),但在打开app.exe之后,它会立即关闭它。 有什么方法可以运行app.exe并让它保持打开状态?

控制台应用程序鼠标单击XY坐标检测/比较

我有一个游戏,我正在C#控制台应用程序中工作,纯粹作为练习,然后继续更好的方法。 与使用内置按钮function的Windows窗体应用程序相反,我正在努力抓住光标位置(我知道该怎么做)并将其与控制台应用程序内部的一些区域进行比较,如下所示:也许像素位置,但我也不知道是否有某种内置单位的空间而不是像素(这最后一位是我无法想象的部分)。 PS我知道这是一般性的,没有代码已经提供,但我不觉得它是需要的,因为我要求的是如何在控制台应用程序中获取XY坐标的简要说明,并将它们粘贴在int中变量。 提前谢谢了! :d

你能从C#控制台应用程序中执行另一个EXE文件吗?

你能从C#控制台应用程序中执行另一个EXE文件吗? 你能传递参数吗? 你能得到退出代码吗?

Windows控制台应用程序陷入困境(需要按键)

我有一个控制台程序,其中包含不同的组件,运行方式如下: void start() { while(true){ DoSomething(); Thread.Sleep(1000*5); } } 我的主要入口点看起来像[伪代码] Thread.Start(Componenet1.Start); Thread.Start(Componenet2.Start); while(true){ Console.Writeline(“running”); Thread.Sleep(1000*5); } 在任何地方都没有Console.Reads。 我的问题是SOMETIMES应用程序将运行良好,但然后停止,如果我按下窗口上的任何键它将再次开始工作。 这种情况很少发生,但我在100+ VM上部署了这个程序,在自动化环境中全天候运行。 另外在电脑上我有一些AHK脚本和其他操纵鼠标的东西但不确定它是否与它有任何关系。 另请注意,有时CPU可以在机器上以100%的速度运行,因此可能是线程优先级问题? SOLUTION :您需要禁用快速编辑模式。 这是使用C#代码来执行此操作: // http://msdn.microsoft.com/en-us/library/ms686033(VS.85).aspx [DllImport(“kernel32.dll”)] public static extern bool SetConsoleMode(IntPtr hConsoleHandle, uint dwMode); private const uint ENABLE_EXTENDED_FLAGS = 0x0080; static void Main(string[] args) { IntPtr handle = Process.GetCurrentProcess().MainWindowHandle; SetConsoleMode(handle, ENABLE_EXTENDED_FLAGS);

从C#应用程序运行PowerShell脚本

我正在尝试从ac#应用程序执行PowerShell脚本。 该脚本必须在特殊的usercontext下执行。 我尝试过不同的场景,有些人正在努力: 1.来自PowerShell的直接调用 我直接从ps-console调用脚本,该控制台在正确的usercredentials下运行。 C:\Scripts\GroupNewGroup.ps1 1 结果:成功运行脚本。 2.来自ac#console应用程序 我从ac #consoleapplication调用了脚本,该脚本是在正确的usercredentials下启动的。 码: string cmdArg = “C:\\Scripts\\GroupNewGroup.ps1 1” Runspace runspace = RunspaceFactory.CreateRunspace(); runspace.ApartmentState = System.Threading.ApartmentState.STA; runspace.ThreadOptions = PSThreadOptions.UseCurrentThread; runspace.Open(); Pipeline pipeline = runspace.CreatePipeline(); pipeline.Commands.AddScript(cmdArg); pipeline.Commands[0].MergeMyResults(PipelineResultTypes.Error, PipelineResultTypes.Output); Collection results = pipeline.Invoke(); var error = pipeline.Error.ReadToEnd(); runspace.Close(); if (error.Count >= 1) { string errors = “”; foreach (var […]

有没有办法在.NET Core中只使用一个文件来运行控制台应用程序?

在.NET框架中,您可以创建一个将从命令行运行的.EXE文件,而无需任何额外的配置文件(如果使用ILMerge,则可以将所有.DLL引用放入1 .EXE程序集中)。 我正在尝试使用.NET Core来完成同样的事情,但到目前为止还没有成功。 即使是最简单的没有依赖项的Hello World应用程序,也需要有一个名为.runtimeconfig.json的文件才能使用dotnet.exe运行。 dotnet F:\temp\MyApp.dll .runtimeconfig.json的内容如下: { “runtimeOptions”: { “framework”: { “name”: “Microsoft.NETCore.App”, “version”: “1.1.1” } } } 如果没有此配置文件与.DLL在同一文件夹中,我会收到以下错误: A fatal error was encountered. The library ‘hostpolicy.dll’ required to execute the application was not found in ‘F:\temp’. 我的问题是:有没有办法改变应用程序,所以它不需要这个配置文件存在,所以这些信息的默认值是在.DLL中编译但可以通过添加配置文件来覆盖? 注意:如果平台具有正确版本的.NET Core,我还要确保它“正常工作”而不管它上面安装的平台。 背景 我试图获得一个流畅的用户体验,运行一些有时很有用的实用程序,但很少需要。 由于似乎不可能使用从客户端应用程序作为控制台应用程序引用的相同.DLL ,因此下一个最好的方法是拥有一个可以在没有任何依赖性的情况下下载和运行的文件 。 例如,在Java中,您只需在任何支持的平台上下载.jar文件并运行: java .jar .SomeClass [args] 并且它将“正常工作”而没有任何额外的文件。 如何使用.NET […]