Я создаю небольшое приложение checker, которое я хочу запустить в фоновом режиме, у него просто простой таймер, который проверяет, что работает определенный процесс, однако я хочу скрыть это от переключателя Alt-Tab и списка задач возможен тоже. Я наткнулся на какой-то код от Microsoft, но это не от 2003 и больше не работает в последней версии VB.Net, я получаю сообщение об ошибке с:Скрытие приложения VB.Net из списка задач и заказа ALT + TAB?
OwnerhWnd = GetWindow(Me.hWnd, GW_OWNER)
Я смотрел на нее в Интернете, и последовали некоторые из что люди говорили, но безрезультатно. Многие предложили другим, используя Me.Handle, но я не мог получить эту работу либо просто продолжать получать ту же ошибку:
A first chance exception of type 'System.DllNotFoundException' occurred in Checkr.exe
Вот код, предоставленный:
Public Class Form1
Declare Function ShowWindow Lib "User" (ByVal hWnd As Integer,
ByVal nCmdShow As Integer) As Integer
Declare Function GetWindow Lib "User" (ByVal hWnd As Integer,
ByVal wCmd As Integer) As Integer
Const SW_HIDE = 0
Const GW_OWNER = 4
Sub Form_Load()
Dim OwnerhWnd As Integer
Dim ret As Integer
' Make sure the form is invisible:
form1.Visible = False
' Set interval for timer for 5 seconds, and make sure it is enabled:
timer1.Interval = 5000
timer1.Enabled = True
' Grab the background or owner window:
OwnerhWnd = GetWindow(Me.hWnd, GW_OWNER)
' Hide from task list:
ret = ShowWindow(OwnerhWnd, SW_HIDE)
End Sub
Sub Timer1_Timer()
Dim ret As Integer
' Display a message box:
ret = MsgBox("Visible by Alt+Tab. Cancel to Quit", 1, "Invisible Form")
' If cancel clicked, end the program:
If ret = 2 Then
timer1.Enabled = False
Unload Me
End
End If
End Sub
Оригинал статьи Microsoft можно найти here, если это поможет.
Нет, этот код вздор. «Скрыть из списка задач» очень расплывчато. Вы просто не хотите создавать окно? Затем запишите приложение режима консоли и используйте вкладку «Проект + Свойства», «Приложение» и измените параметр «Тип приложения» на «Приложение Windows Forms». –