Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 更改应用程序窗口样式_C#_Process - Fatal编程技术网

C# 更改应用程序窗口样式

C# 更改应用程序窗口样式,c#,process,C#,Process,我将IE作为一个进程启动,然后我想更改应用程序的以下属性 删除应用程序的标题栏、工具栏(如果是IE) 通过c#设置顶部、左侧位置和尺寸 为了防止进程最小化,我使用了以下代码,但运气不佳(找到进程的句柄,然后将其传递给下面的函数) 编辑1: 是否可以阻止IE上下文菜单并阻止它显示在任务栏上听起来像是您想要使用的,它提供了一个全屏、无工具栏、不可最小化的窗口 请查看前面的链接以了解更多信息,并且,呃,请投票支持我:)以下是我给出的关于更改窗口样式的建议。(它在VB.NET中,因此您必须进行翻译,但

我将IE作为一个进程启动,然后我想更改应用程序的以下属性

  • 删除应用程序的标题栏、工具栏(如果是IE)
  • 通过c#设置顶部、左侧位置和尺寸
  • 为了防止进程最小化,我使用了以下代码,但运气不佳(找到进程的句柄,然后将其传递给下面的函数)

  • 编辑1:

    是否可以阻止IE上下文菜单并阻止它显示在任务栏上

    听起来像是您想要使用的,它提供了一个全屏、无工具栏、不可最小化的窗口

    请查看前面的链接以了解更多信息,并且,呃,请投票支持我:)

    以下是我给出的关于更改窗口样式的建议。(它在VB.NET中,因此您必须进行翻译,但它应该有助于您理解。)

    删除进程的标题栏、工具栏(如果是IE)

    这里的术语不太正确。标题栏或工具栏属于窗口,而不是进程。一个窗口“属于”一个进程,从这个意义上说,一个进程可以调用CreateWindow

    现在,要删除标题栏,请从窗口中删除WS_标题样式,为此,您可以使用GWL_样式标志调用SetWindowLong,并使用tilde操作符将其删除:

    SetWindowLong(hwnd, GWL_STYLE, GetWindowLong(hwnd) & ~WS_CAPTION);
    
    通过c设置顶部、左侧位置和尺寸#

    两者兼得

    防止进程最小化


    窗口,不是进程,你不能,你可以从标题栏中删除控件,但这也会删除最大化和关闭,如果你想查看的话,

    只是一个想法:如果你没有将IE作为一个单独的进程启动(基本上是:打开浏览器并将其完全释放出你的控制),会有帮助吗,但是在你的C#应用程序中使用一个你可以控制的表单——大小、位置、没有标题栏、不允许最小化——上面有一个控件(只是?)?WebBrowser基本上只是IE,但作为表单上的一个控件,您可以(几乎)完全控制它。

    所有这些都不是进程的属性,而是窗口的属性。这可能会帮助您更好地搜索答案。我知道所有这些都不是流程的属性。是否有可能通过Win apiI设置/更改属性我不知道这是否可以通过利用框架中的某些东西来实现,但可以通过从Win32 API劫持IE窗口句柄并对其进行操作来实现。我不建议您阅读您不能阅读的内容,当处于kiosk模式时,窗口会最大化!也许你应该先多注意一个答案?我喜欢你的想法,但我已经试过了。我的应用程序占用太多内存,无法呈现网站。所以我尝试了一个外部应用程序
    SetWindowLong(hwnd, GWL_STYLE, GetWindowLong(hwnd) & ~WS_CAPTION);