最小化系统启动时的Windows窗体

CMW

我已经为它开发了一个Windows窗体应用程序和安装程序。我已经在计算机上安装了该应用程序。现在,当我重新启动PC或登录计算机时,该应用程序将启动并显示在桌面上。系统托盘中还会显示一个系统托盘图标。现在,我想保持应用程序隐藏,并且只有系统任务栏图标应该可见。表示应用程序不应显示在屏幕上,但系统任务栏图标应可见。我使用了“ CreateProcessAsCurrentUser”方法,在其中将“ STARTF_USESHOWWINDOW”的值设置为不同的值。但仍然无法正常工作。我也没有得到系统启动时调用哪种应用程序方法。是Program.cs文件中的Main()函数吗?请告诉我解决方案以及所调用的函数。

[STAThread]
    Main() function code: `static void Main()
    {
        Mutex mutex = new Mutex(false, "Application Name");
        try
        {
            if (mutex.WaitOne(0, false))
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                Application.ThreadException += new ThreadExceptionEventHandler(Application_ThreadException);
                AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
                Application.Run(new MainForm());
            }
            else
            {
                IntPtr pf = NativeMethods.FindWindow(null, "Application Name");
                NativeMethods.ShowWindow(pf, 0);
                NativeMethods.SetForegroundWindow(pf);
            }
        }

我将标志的值设置如下。

[Flags]
public enum CreateProcessFlags : uint
{
     STARTF_USESHOWWINDOW = 0x00000000,
}
艾哈迈德·伊利亚斯(Ahmed ilyas)

试试这个....把它放在你的形式:

 protected override void SetVisibleCore(bool value)
        {
            base.SetVisibleCore(false);
        }

现在,这将始终使表单不可见。

您将需要一些逻辑来确定是否应从应用程序的其他部分显示它。例如,设置一个全局布尔值并修改上面的代码以使用该值。

或者,您可以使用以下方法:

protected override void OnVisibleChanged(EventArgs e)
        {
            base.OnVisibleChanged(e);
            this.Visible = false;
        }

但是当您立即运行该应用程序时,您会看到一点闪光。然后,您再次需要控制何时使其可见,因此请检查visible属性的全局bool值,以便最终显示该表单

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在脚本启动时最小化PHP内存使用

来自分类Dev

C#Windows窗体启动始终最小化

来自分类Dev

操作系统启动时如何启动Fuseki?

来自分类Dev

在系统启动时启动后台Rails进程

来自分类Dev

在系统启动时启动Sidekiq。Ubuntu 14.04

来自分类Dev

我想在系统启动时打开Thunderbird,但将其最小化

来自分类Dev

系统启动时启动脚本(Ubuntu 16.04.1)

来自分类Dev

在系统启动时启动Dropbox(不登录)

来自分类Dev

如何在系统启动时启动Viber?

来自分类Dev

我想在系统启动时打开Thunderbird,但将其最小化

来自分类Dev

Windows Metro Apps在启动时将自身最小化

来自分类Dev

在系统启动时启动Dropbox(不登录)

来自分类Dev

系统启动时启动脚本(Ubuntu 16.04.1)

来自分类Dev

在脚本启动时最小化PHP内存使用

来自分类Dev

如何在启动时最小化启动Thunderbird?

来自分类Dev

Tor无法在系统启动时启动

来自分类Dev

后端在系统启动时关闭

来自分类Dev

CefSharp。最小化Windows窗体时获得灰色内容

来自分类Dev

系统启动时显示消息

来自分类Dev

如何在系统启动时启动Viber?

来自分类Dev

系统启动时的详细消息

来自分类Dev

如何在系统启动时最小化启动Viber?

来自分类Dev

在系统启动时自动启动反向ssh隧道

来自分类Dev

自动登录后,在Windows 10系统启动时使用GUI启动VirtualBox VM

来自分类Dev

如何在自动启动时将Skype for Linux alpha最小化到系统托盘

来自分类Dev

如何在启动时将Thunderbird最小化到Unity系统托盘?

来自分类Dev

在系统启动时安装MSI

来自分类Dev

在系统启动时启动服务

来自分类Dev

如果由系统启动,则启动应用程序最小化

Related 相关文章

热门标签

归档