Riprendo la precedente discussione per aggiungere ancora un problema; l'argomento è sempre quello esposto in quella discussione, ossia la difficoltà di chiudere un File.pdf da VB6.
Gibra, ma anche Renygade, mi avevano dato soluzioni ed io ho adottato quella di Gibra per semplicità, ossia intercettare l'eventuale errore nel caso il File fosse aperto e chiedere all'utente di chiuderlo.
Fra le cose che però devo fare, c'è anche quella di aprirlo questo benedetto File.pdf e l'aperture l'ho fatta tramite "ShellExecute". Sembra che tutto funzioni, ma purtroppo il File si apre solo la prima volta; le volte successive si apre "Adobe Reader" che mi comunica: "Errore durante l'apertura del documento. Questo file è già aperto o è usato da un'altra applicazione". Evidentemente sbaglio qualcosa nella mia procedura che riporto qui sotto:


codice:
    Dim DaCancellare As Object, FilePDF As String
    Dim Attesa

    Set DaCancellare = CreateObject("Scripting.FileSystemObject")
    
    Screen.MousePointer = vbHourglass
    FilePDF = "C:\Documents and Settings\" & NomeUser & "\Desktop\" & "VenditePerCliente" & ".pdf"
    If DaCancellare.FileExists(FilePDF) = True Then
        Kill FilePDF
    End If
    Set DaCancellare = Nothing

    ' Avvia la stampa in PDF sul Desktop del Report "VenditePerCliente"

     NomeReport = "VenditePerCliente"        ' Il nome del Report di Access che si vuole convertire in PDF
    '****************************************************************************************************
    NomeFilePDF = "VenditePerCliente"                 ' Il nome che si vuole dare al File Convertito in PDF
 '****************************************************************************************************
    OrigineAllegato = "C:\Documents and Settings\" & NomeUser & "\Desktop\" & NomeFilePDF & ".pdf"
    ' Indica il Path in cui si intende archiviare il File da convertire, completo di Nome del File,
    ' OPPURE dal quale prendere il File da Allegare alla Mail o da Stampare
    '****************************************************************************************************
    StampaReportInPDF            ' genera la stampa in .pdf partendo da un report di Access
                                                           
    Set Attesa = CreateObject("Scripting.FileSystemObject")
    Do Until Attesa.FileExists(OrigineAllegato) = True
        If Attesa.FileExists(OrigineAllegato) = False Then  ' Cerca l'Ordine appena convertito in PDF
            Sleep (100)                                     ' Se ancora non c'è, aspetta 100ms
        Else
            Exit Do                                         ' Altrimenti prosegue
        End If
    Loop

    Set Attesa = Nothing

    Sleep (100)

    Dummy= -1
    Dummy= ShellExecute(0, "open", OrigineAllegato, vbNullString, vbNullString, 0)
            
    Screen.MousePointer = vbNormal
Exit Sub
errore_cmdStampa_Click:
    Screen.MousePointer = vbNormal
    If Err.Number = 70 Then
    
        MsgBox "    Chiudere il File ''VenditePerCliente.pdf '' prima di procedere.    "
        Exit Sub
    
    End If

Se però non genero il file .pdf e/o non lo istanzio per verificare se è già stato creato, posso ripetere quante volte voglio l'apertura del File senza che Adobe Reader mi dia messaggi di errore.
"StampaReportInPDF" chiama una procedura esterna che si chiude al suo termine e quindi non dovrebbe lasciare nulla di aperto.
Se necessario copierò anche questa procedura.
Intanto, qualcuno sa dirmi la ragioni dell'errore di Adobe?
Grazie