using System; using System.Collections.Generic; using System.Text; using System.IO; using System.Configuration; using System.Collections; using System.Runtime.InteropServices; //黄色 using System.Diagnostics; //黄色 namespace Qisda.OTM.AutoJob { class Program { [DllImport("user32.dll")] //黄色 private static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow); //黄色 static void Main(string[] args) { Process current = Process.GetCurrentProcess(); //黄色 ShowWindowAsync(current.MainWindowHandle,0); //黄色 string baseDirectory = AppDomain.CurrentDomain.BaseDirectory; log4net.Config.XmlConfigurator.Configure(new FileInfo(Path.Combine(baseDirectory, ConfigurationManager.AppSettings["log4net-config-file"]))); PURToOTMJob job = new PURToOTMJob(); Hashtable parameter = new Hashtable(); parameter.Add("SITE","QMX"); job.Run(parameter); } } } 黄色底色部分的代码为完成该功能的代码,其中: ShowWindowAsync(current.MainWindowHandle,0)中的函数资料如下(网上摘抄): Public Declare Function ShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd As Integer, ByVal nCmdShow As Integer) As Integer 参数 类型及说明 hwnd Long,窗口句柄,要向这个窗口应用由nCmdShow指定的命令 nCmdShow Long,为窗口指定可视性方面的一个命令。请用下述任何一个常数 SW_HIDE 隐藏窗口,活动状态给令一个窗口 SW_MINIMIZE 最小化窗口,活动状态给令一个窗口 SW_RESTORE 用原来的大小和位置显示一个窗口,同时令其进入活动状态 SW_SHOW 用当前的大小和位置显示一个窗口,同时令其进入活动状态 SW_SHOWMAXIMIZED 最大化窗口,并将其激活 SW_SHOWMINIMIZED 最小化窗口,并将其激活 SW_SHOWMINNOACTIVE 最小化一个窗口,同时不改变活动窗口 SW_SHOWNA 用当前的大小和位置显示一个窗口,不改变活动窗口 SW_SHOWNOACTIVATE 用最近的大小和位置显示一个窗口,同时不改变活动窗口 SW_SHOWNORMAL 与SW_RESTORE相同 使用API浏览器 (API Text Viewer),就可以知道这些常数的数值。 Public Const SW_SHOW = 5 Public Const SW_SHOWDEFAULT = 10 Public Const SW_SHOWMAXIMIZED = 3 Public Const SW_SHOWMINIMIZED = 2 Public Const SW_SHOWMINNOACTIVE = 7 Public Const SW_SHOWNA = 8 Public Const SW_SHOWNOACTIVATE = 4 Public Const SW_SHOWNORMAL = 1 Public Const SW_HIDE = 0 Public Const SW_RESTORE = 9
c#中隐藏控制台的方法
最新推荐文章于 2023-02-17 20:30:00 发布