Salve a tutti, in questi giorni ho risolto un problema in VB6 per le mie capacità non da poco, sono riuscito tramite il subclassing ad intercettare il click destro del mouse su un controllo pdf.

il codice dell'intercettazione (nel modulo) è questo:


codice:
Public Function nuovoProcesso(ByVal hwnd As Long, ByVal iMsg As Long,
ByVal wParam As Long, ByVal lParam As Long) As Long

 If iMsg = 528 Then 'click del mouse (dx e sx)
  If wParam = 516 Then 'click del dx
   MsgBox "cliccato il destro, non si fa!!!!"
  End If
 End If
 nuovoProcesso = CallWindowProc(processoOriginale, hwnd, iMsg,wParam, lParam)

End Function

Però in questo modo quando si clicca con il dx sul controllo viene
visualizzato un msgbox e dopo averlo chiuso appare il menu tasto destro;
invece vorrei che il menu non venga aperto.

Da ignorante ho pensato: intercetto il click che però viene ugualmente
processato dalla window procedure originale.

Come posso fare per evitare che il messaggio venga processato dalla
window procedure originale? devo sostituire la window procedure origniale con una nuova? come faccio??

Grazie mille