Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [VB6] Far partire un eseguibile sono quando lo stesso non e' caricato

    Abbiamo fatto un programmino in cui lanciamo un programma (free.exe) con un tasto (es. A). Quando pero' si schiaccia la A per qualche motivo ne apre un altro. Mi servirebbe una stringa dove se e' gia aperto il free.exe la A non deve lanciare nulla.
    Ho cercato ma non ho trovato nulla che possa risolvere questo problema.
    [CRY] - Counter-Strike clan! I want you!
    Sostenitore della teoria: ruttare e' umano ma scoreggiare e' divino.

  2. #2
    Utente di HTML.it L'avatar di vonkranz
    Registrato dal
    Sep 2001
    Messaggi
    1,387

    Re: [VB6] Far partire un eseguibile sono quando lo stesso non e' caricato

    Originariamente inviato da Rabinhood
    Abbiamo fatto un programmino in cui lanciamo un programma (free.exe) con un tasto (es. A). Quando pero' si schiaccia la A per qualche motivo ne apre un altro. Mi servirebbe una stringa dove se e' gia aperto il free.exe la A non deve lanciare nulla.
    Ho cercato ma non ho trovato nulla che possa risolvere questo problema.
    se free.exe e' un programma che hai fatto tu, basta che gestisci App.PrevInstance all'apertura

    se invece non e' un tuo prg, basta che usi una variabile statica che imposti a true la prima volta che lanci Free.exe.
    ...and I miss you...like the deserts miss the rain...

  3. #3
    Free.exe e' un nome fittizio. Questo programma non e' stato fatto da me. Come posso fare per impostarlo a true? Nel senso che non dovrebbe esserci comunque un controllo se il processo e' attivo?
    [CRY] - Counter-Strike clan! I want you!
    Sostenitore della teoria: ruttare e' umano ma scoreggiare e' divino.

  4. #4
    Utente di HTML.it L'avatar di vonkranz
    Registrato dal
    Sep 2001
    Messaggi
    1,387
    Originariamente inviato da Rabinhood
    Free.exe e' un nome fittizio. Questo programma non e' stato fatto da me. Come posso fare per impostarlo a true? Nel senso che non dovrebbe esserci comunque un controllo se il processo e' attivo?
    L'avevo capito che era fittizio
    Se il prg non e' fatto da te, non puoi farci nulla; puoi fare una cosa del tipo:
    codice:
    Private Sub Command1_Click()
    Static attivo As Boolean
    If Not attivo Then
       Shell (nomeprogramma)
       attivo = True
    End If
    End Sub
    ...and I miss you...like the deserts miss the rain...

  5. #5
    Utente di HTML.it L'avatar di macse
    Registrato dal
    Dec 2002
    Messaggi
    138
    'in module
    Public Declare Function FindWindow Lib "User32" Alias "FindWindowA" (lpClassName As Any, ByVal lpWindowName As String) As Long

    'in form
    hApp = FindWindow(ByVal 0&, "Titolo")
    If hApp = 0 Then
    rets = Shell("c:\free.exe")
    End If


    NB il campo dove ho scritto "Titolo" deve contenere esattamente quello che viene scritto nella ControlBar (quella blu in alto in ogni form)
    Ad Esempio se esegui la calcolatrice avrà come Caption del form il valore "Calcolatrice"

    Se viene trovata una finestra con la caption che hai specificato la funzione (API) ti restituisce un Long con l'Handle dell'applicazione
    ovviamente se restituisce 0 significa che non ha trovato nessuna form ( anche invisibile ) con quella Caption.

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.