Разбалавнсировка стека
От: Qb1024  
Дата: 30.04.11 19:17
Оценка:
Почему так, есть вроде бы простой и понятный код, который есть на многих сайтах:
Private Declare Function FindWindow _ 
        Lib "user32.dll" Alias "FindWindowA" ( _ 
        ByVal lpClassName As String, _ 
        ByVal lpWindowName As String) As Long 
Private Declare Function ShowWindow _ 
        Lib "user32.dll" ( _ 
        ByVal hWnd As Long, _ 
        ByVal nCmdShow As Long) As Long 

Private Sub HiddenTaskBar() 
    ShowWindow( FindWindow("Shell_TrayWnd", vbNullString), 0&) 
End Sub 

Private Sub VisibleTaskBar() 
    ShowWindow( FindWindow("Shell_TrayWnd", vbNullString), 4&)
End Sub


Но при попытке вызова HiddenTaskBar() получаю ошибку:

Помощник отладки управляемого кода "PInvokeStackImbalance" обнаружил неполадку в "...\WindowsApplication5\WindowsApplication5\bin\De bug\WindowsApplication5.vshost.exe". Дополнительные сведения: Вызов функции PInvoke "WindowsApplication5!WindowsApplication5.Form1::Sho wWindow" разбалансировал стек. Вероятно, это вызвано тем, что управляемая сигнатура PInvoke не совпадает с неуправляемой целевой сигнатурой. Убедитесь, что соглашение о вызовах и параметры сигнатуры PInvoke совпадают с неуправляемой целевой сигнатурой.


Пишу в 2010 студии.
Как от этого избавится?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.