Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Опять CallBack Добавлено: 12.03.06 19:46  

Автор вопроса:  Tamplier | ICQ: 298742928 
Теперь новая проблема:
Он просто не вызывается!
Пробовал тотже КоллБэк всунуть в SHBrowseForFolder - съел и не подавился, а тут...
Ему что, коллБэк особенный что ли нужен?

Sub CallMsg()
    Dim lpIDList As Long
    Dim udtBI As BrowseInfo
    With udtBI
        .hWndOwner = Form1.hwnd
        .lpfnCallback = GetAddressOfFunction(AddressOf MsgCallBack)
    End With
    SHBrowseForFolder udtBI
    Dim MBP As MSGBOXPARAMS
    With MBP
        .cbSize = Len(MBP)
        .hWndOwner = Form1.hwnd
        .lpszText = "text"
        .lpszCaption = "other text"
        .dwStyle = MB_ICONINFORMATION
        .lpfnMsgBoxCallback = GetAddressOfFunction(AddressOf MsgCallBack)
    End With
    MessageBoxIndirect MBP
End Sub
Public Function GetAddressOfFunction(add As Long) As Long
    GetAddressOfFunction = add
End Function
Public Function MsgCallBack(ByVal hwnd As Long, ByVal uMsg As Long, ByVal lp As Long, ByVal pData As Long) As Long
    
    On Error Resume Next
    
    Debug.Print "CallBack Successed " & hwnd & Chr(32) & uMsg
    MsgCallBack = 0
    
End Function

Ответить

  Ответы Всего ответов: 9  

Номер ответа: 1
Автор ответа:
 Fever



Вопросов: 60
Ответов: 808
 Профиль | | #1 Добавлено: 12.03.06 20:32
Debug.Print убери. Это изза него. VB виснет, я правильно понял?

Ответить

Номер ответа: 2
Автор ответа:
 Tamplier



ICQ: 298742928 

Вопросов: 58
Ответов: 340
 Профиль | | #2 Добавлено: 12.03.06 20:53
нет, управление просто не переходит Даже вызова ее нет

Ответить

Номер ответа: 3
Автор ответа:
 Fever



Вопросов: 60
Ответов: 808
 Профиль | | #3 Добавлено: 12.03.06 21:36
Охх

Ответить

Номер ответа: 4
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #4 Добавлено: 13.03.06 11:17

lpfnMsgBoxCallback
Pointer to the callback function that processes help events for the message box. The callback function has the following form:
VOID CALLBACK MsgBoxCallback(LPHELPINFO lpHelpInfo);


Public Function MsgCallBack(ByVal hwnd As Long, ByVal uMsg As Long, ByVal lp As Long, ByVal pData As Long) As Long

Разница как бы чувтствуется?
.
ЗЫ На будущее приводи и декларации типов - там тоже народ часто косячит.

Ответить

Номер ответа: 5
Автор ответа:
 Tamplier



ICQ: 298742928 

Вопросов: 58
Ответов: 340
 Профиль | | #5 Добавлено: 13.03.06 16:35
VOID CALLBACK MsgBoxCallback(LPHELPINFO lpHelpInfo);

Блин, мне его хендл нужен!! И процедуру, в которой я могу его изменить...
А писать свой - времени мало...

Ответить

Номер ответа: 6
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #6 Добавлено: 13.03.06 17:00
Копай структуру HELPINFO. А левые callback'и подсовывать без толку - кроме гемора ничего не получишь :) Радуйся что GPF не получил.

Ответить

Номер ответа: 7
Автор ответа:
 Tamplier



ICQ: 298742928 

Вопросов: 58
Ответов: 340
 Профиль | | #7 Добавлено: 13.03.06 19:54
GPF
это еще че за фигня?

Ответить

Номер ответа: 8
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #8 Добавлено: 14.03.06 11:03
general protection fault

Ответить

Номер ответа: 9
Автор ответа:
 Tamplier



ICQ: 298742928 

Вопросов: 58
Ответов: 340
 Профиль | | #9 Добавлено: 14.03.06 15:05
пасиба

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам