Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    42

    [VB6] Click con SendDlgItemMessage

    Buongiorno a tutti, spero non siate tutti in vacanza...

    Devo far interagire due applicazioni.

    La prima deve istanziare un'applcazione excel a seguito di un click su un button mentre la seconda deve, tramite una api, simulare il click sul button citato della prima applicazione.

    La prima applicazione fa quanto segue:
    codice:
     
    Private Sub Command1_Click()
        Dim a As Excel.Application
       
        On Error Resume Next
            'Crea Una Nuova Sessione Di Excel
            Set a = CreateObject("Excel.Application")
            If Err <> 0 Then
                MsgBox "Errore di Apertura Microsoft Excel", vbOKOnly + vbCritical, "Errore Apertura"
                Stop
            End If
        On Error GoTo 0
    End Sub
    mentre la seconda:
    codice:
     
    Private Sub Command1_Click()
    Dim hAppWnd As Long
    hAppWnd = FindWindow(vbNullString, "p")
    SendDlgItemMessage hAppWnd, &H1, BM_CLICK, vbNull, ""
    End Sub
    in un modulo bas della seconda ho opportunamente dichiarato:
    codice:
    Public Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    
    Public Declare Function SendDlgItemMessage Lib "user32" Alias "SendDlgItemMessageA" _
                                                (ByVal hDlg As Long, ByVal nIDDlgItem As Long, ByVal wMsg As Long, _
                                                ByVal wParam As Long, ByVal lParam As String) As Long
    
    Public Const BM_CLICK = &HF5
    Il caption del form dell'applicazione 1 è impostato a "p".
    Per l'esecuzione bisogna prima lanciare l'applicazione 1, poi la 2 e poi premere sul button Command1 della seconda.

    Se clicco il button dell'applicazione uno "a manina" non ho nessun problema, viceversa se provo ad automatizzare la cosa con l'applicazione 2 mi viene restituito l'errore -2147417843.
    Come posso risolvere il problema?

    Grazie a tutti...

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    42
    Nessun aiuto?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.