Visualizzazione dei risultati da 1 a 5 su 5

Discussione: [VB6] ocx e .bat!

  1. #1

    ocx e .bat!

    Ciao!

    Ho inserito in una pagina htm un'ocx che a sua volta richiama un file .bat ed esegue dei comandi!

    E' possibile inserire, sempre nel file .bat, dei comandi per comunicare con la finestra dell'ocx?

    In pratica vorrei che quando il file .bat abbia concluso i suoi comandi, comunichi alla finestra di proseguire con altre funzioni.

    Per ora la finestra del .bat esegue e si chiude in automatico..

    ?


  2. #2
    devi nel tuo ocx dirgli di aspettare che il batch finisca devi lanciare una shell sincrona
    Vascello fantasma dei mentecatti nonchè baronetto della scara corona alcolica, piccolo spuccello di pezza dislessico e ubriaco- Colui che ha modificato l'orribile scritta - Gran Evacuatore Mentecatto - Tristo Mietitore Mentecatto chi usa uTonter danneggia anche te

  3. #3
    Utilizzo già la shell per aprire il file .bat!

    codice:
    Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
    
    Sub OpenFile(hwnd As Long, File As String, Optional Operation As String = "open", Optional Param As String = "", Optional Dir As String = "")
      Call ShellExecute(hwnd, Operation, File, Param, Dir, 1)
    End Sub
    
    Private Sub avvia_Click()
         OpenFile 1639072, "c:\routing.bin"
    End Sub
    dovvrei utilizzare per caso "WaitForSingleObject" ??

  4. #4
    codice:
    Private Const PROCESS_QUERY_INFORMATION = &H400
    Private Const STATUS_PENDING = &H103&
    
    Private Declare Function OpenProcess Lib "kernel32" _
        (ByVal dwDesiredAccess As Long, _
        ByVal bInheritHandle As Long, _
        ByVal dwProcessId As Long) As Long
    
    Private Declare Function GetExitCodeProcess Lib "kernel32" _
        (ByVal hProcess As Long, lpExitCode As Long) As Long
    
    Private Declare Function CloseHandle Lib "kernel32" _
        (ByVal hObject As Long) As Long
    
    Private Sub ShellAndWait(sFile As String, Visualizzazione As Long)
    Dim hProcess As Long
    Dim ProcessId As Long
    Dim CodExit As Long
    
        ProcessId = Shell(sFile, Visualizzazione)
        hProcess = OpenProcess(PROCESS_QUERY_INFORMATION, False, ProcessId)
        Do
            Call GetExitCodeProcess(hProcess, CodExit)
            DoEvents
        Loop While CodExit = STATUS_PENDING
    
        Call CloseHandle(hProcess)
    End Sub
    
    'per chiamarla
    
     shellandwait percorsofile, vbhide
    Vascello fantasma dei mentecatti nonchè baronetto della scara corona alcolica, piccolo spuccello di pezza dislessico e ubriaco- Colui che ha modificato l'orribile scritta - Gran Evacuatore Mentecatto - Tristo Mietitore Mentecatto chi usa uTonter danneggia anche te

  5. #5
    Ok... Grazie MILLE!!!!


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.