Tag: 批处理文件

如何使用ProcessStartInfo运行批处理文件?

但它不起作用 – 意味着java代码没有执行。 虽然批处理文件在Windows资源管理器中单击或在命令行中运行时运行正常。 由于批处理文件是单个DOS命令时这可以正常工作,我认为这与Java代码运行需要大约20分钟这一事实有关。 我正在使用以下代码 var si = new ProcessStartInfo(); si.CreateNoWindow = true; si.FileName = batchFileName; si.UseShellExecute = false; Process.Start(si); 我究竟做错了什么?

如何在运行批处理文件时隐藏cmd窗口?

如何在运行批处理文件时隐藏cmd窗口? 我使用以下代码来运行批处理文件 process = new Process(); process.StartInfo.FileName = batchFilePath; process.Start();

如何监控焦点变化?

好吧有时候我正在打字,很少发生什么东西偷了重点,我读了一些解决方案(甚至是VB手表),但它们并不适用于我。 是否有任何窗口’手柄’可以处理任何焦点变化? 无论在哪种语言,C,C ++,VB.NET,C#,Anything .NET或Windows相关,Batch,PoweShell,VBS Script ……只要我能够监控每个焦点变化并将其记录到文件/ cmd窗口/可视窗口。 就像是: void event_OnWindowsFocusChange(int OldProcID, int NewProcID); 会非常有用的。 或者也许有这方面的工具(我找不到?)

从WPF Windows应用程序输出Console.WriteLine到实际控制台

背景:我正在努力为现有的WPF Windows应用程序添加命令行和批处理function。 当我在启动时检测到一些选项时,我禁止窗口出现,进行一些处理并立即退出。 现在,因为没有UI,我想将一些消息输出到stdout / stderr。 考虑以下代码: namespace WpfConsoleTest { public partial class App : Application { protected override void OnStartup(StartupEventArgs e) { Console.WriteLine(“Start”); System.Threading.Thread.Sleep(1000); Console.WriteLine(“Stop”); Shutdown(0); } } } 当我从命令行运行时,我希望以下输出: Start Stop 但反而: C:\test>WpfConsoleTest.exe C:\test> 但是,您可以重定向输出: C:\test>WpfConsoleTest.exe > out.txt C:\test>type out.txt Start Stop 不幸的是,重定向到CON不起作用: C:\test>WpfConsoleTest.exe > CON C:\test> 另一个问题是WpfConsoleTest.exe在启动后立即退出。 所以: C:\test>WpfConsoleTest.exe > out.txt & […]

使用%~dp0引用的批处理文件路径有时会在更改目录时发生更改的原因是什么?

我有一个包含以下内容的批处理文件: echo %~dp0 CD Arvind echo %~dp0 即使改变%~dp0目录值也是一样的。 但是,如果我从CSharp程序运行此批处理文件,则%~dp0的值会在CD之后更改。 它现在指向新目录。 以下是我使用的代码: Directory.SetCurrentDirectory(//Dir where batch file resides); ProcessStartInfo ProcessInfo; Process process = new Process(); ProcessInfo = new ProcessStartInfo(“mybatfile.bat”); ProcessInfo.UseShellExecute = false; ProcessInfo.RedirectStandardOutput = true; process = Process.Start(ProcessInfo); process.WaitForExit(); ExitCode = process.ExitCode; process.Close(); 为什么以不同方式执行相同脚本的输出存在差异? 我在这里想念一下吗?