代码之家  ›  专栏  ›  技术社区  ›  Jader Dias

如何使用隐形眼镜系统.Windows.Forms韦伯先生?

  •  0
  • Jader Dias  · 技术社区  · 14 年前

    我试图在没有容器窗体的情况下运行它,但是 DocumentCompleted 事件不触发。

    0% 但是这个过程并不是完全隐藏的,因为当用户使用 中高音 +

    我不介意进程是否出现在任务管理器上。

    5 回复  |  直到 14 年前
        1
  •  2
  •   Jader Dias    14 年前

    要防止显示窗口,请将此代码粘贴到窗体中:

        protected override void SetVisibleCore(bool value) {
            if (!this.IsHandleCreated) {
                CreateHandle();
                value = false;
            }
            base.SetVisibleCore(value);
        }
    

    防止隐形窗体窃取焦点也很重要,代码如下:

    protected override bool ShowWithoutActivation
    {
        get { return true; } // prevents form creation from stealing focus
    }
    

    form1.Enabled = false; // prevents inner controls from stealing focus
    
        2
  •  3
  •   Community Lee Campbell    7 年前

    我猜你是在尝试做一些自动化的任务,比如废弃数据之类的。在这种情况下,您可能需要查看此问题和提供的答案:

    Using BrowserSession and HtmlAgilityPack to login to Facebook through .NET

        3
  •  1
  •   SLaks    14 年前

    ShowInTaskbar 如果是假的, FormBorderStyle 没有,而且 ControlBox 错误的。

        4
  •  1
  •   Jader Dias    14 年前

    通过3个步骤完成:

    1. 要隐藏窗体,请使用 Opacity = 0
    2. ShowInTaskbar = false
    3. 躲避 中高音 标签 使用以下代码

    .

    public partial class Form1 : Form
    {
        [DllImport("user32.dll")]
        public static extern int SetWindowLong(IntPtr window, int index, int
        value);
    
        [DllImport("user32.dll")]
        public static extern int GetWindowLong(IntPtr window, int index);
    
        const int GWL_EXSTYLE = -20;
        const int WS_EX_TOOLWINDOW = 0x00000080;
    
        public Form1()
        {
            InitializeComponent();
            int windowStyle = GetWindowLong(Handle, GWL_EXSTYLE);
            SetWindowLong(Handle, GWL_EXSTYLE, windowStyle | WS_EX_TOOLWINDOW);
        }
    }
    

    或者按照建议:

    public partial class Form1 : Form
    {
        const int WS_EX_TOOLWINDOW = 0x00000080;
    
        protected override CreateParams CreateParams
        {
            get
            {
                var createParams = base.CreateParams;
                createParams.ExStyle |= WS_EX_TOOLWINDOW;
                return createParams;
            }
        }
    }
    
        5
  •  0
  •   STW    14 年前

    你试过把 0%不透明度 隐藏 Form.Hide() )用它的形状 ShowInTaskbar 属性设置为false?

    ShowInTaskbar = false