Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di ilgiovo
    Registrato dal
    Aug 2001
    Messaggi
    518

    [VB6] Esecuzione di una riga di comando da una DLL ActiveX

    ciao, sto facendo questa cosa per poi utilizzarla in una pagina ASP, ma il problema me lo da la DLL quindi il forum dovrebbe essere questo

    con VB6 mi sono fatto una DLL ActiveX che poi istanzio dalla pagina e di cui chiamo un metodo con dei parametri che mi deve lanciare una riga di comando DOS

    mi manca poco per risolvere ma ho 2 problemi, a seconda del metodo che utilizzo

    1) con WSHShell.run(comando,, 1) lanciando il comando diretto

    funzionerebbe, ma mi lascia attivo il processo nel task manager del comando exe che lancio. Ho provato in tutti i modi a killarlo (con un vbscript trovato su internet o lanciando la riga di comando windows taskkill) ma penso che non lo faccia perchè la DLL viene eseguita con l'utente IUSR_NOMEMACCHINA che non ha i diritti per killare un processo (PENSO!!!). Tra l'altro se lancio il comando a mano da start, esegui o da un prompt DOS il problema non si presenta, cioè il processo termina alla fine dell'esecuzione.

    2) con WSHShell.run(comando,, 1) però lanciando un file bach che mi sono scritto in precedenza, contentente il comando diretto

    mi ritorna Automation error quando cerco di eseguire il comando (ma lanciando il batch manualmente funziona)



    cortesemente qualcuno ha un'idea per risolvere uno dei due problemi??

    grazie
    giovanni
    Cacca!

  2. #2
    Moderatore di CMS L'avatar di kalosjo
    Registrato dal
    Jul 2001
    residenza
    In culo alla luna
    Messaggi
    1,999
    Potresti usare cmd per lanciare il comando dos....

    codice:
    shell "CMD.EXE /C " & rigadaeseguire
    /C indica che poi cmd si deve chiudere, sempre che il comando dos completi la sua esecuzione...
    Scusate i puntini di sospensione...... La verità è che non ho argomenti....

  3. #3
    Utente di HTML.it L'avatar di ilgiovo
    Registrato dal
    Aug 2001
    Messaggi
    518
    avevo già provato, ma mi dà Invalid procedure call or arguments
    Cacca!

  4. #4
    Moderatore di CMS L'avatar di kalosjo
    Registrato dal
    Jul 2001
    residenza
    In culo alla luna
    Messaggi
    1,999
    Neanche
    codice:
    shell "CMD.EXE /C " & rigadaeseguire,vbHide
    oppure

    codice:
    shell "CMD.EXE /C " & rigadaeseguire,vbMaximizedFocus
    Nella mia applicazione funziona perfettamente...
    Scusate i puntini di sospensione...... La verità è che non ho argomenti....

  5. #5
    Utente di HTML.it L'avatar di ilgiovo
    Registrato dal
    Aug 2001
    Messaggi
    518
    Originariamente inviato da kalosjo
    Neanche
    codice:
    shell "CMD.EXE /C " & rigadaeseguire,vbHide
    oppure

    codice:
    shell "CMD.EXE /C " & rigadaeseguire,vbMaximizedFocus
    Nella mia applicazione funziona perfettamente...
    niente da fare... forse perchè la mia non è un'applicazione ma una DLL che chiamo da una pagina ASP.. da quello che so vengono eseguite con permessi diversi
    Cacca!

  6. #6
    Moderatore di CMS L'avatar di kalosjo
    Registrato dal
    Jul 2001
    residenza
    In culo alla luna
    Messaggi
    1,999
    Si, forse il problema è proprio quello....
    Scusate i puntini di sospensione...... La verità è che non ho argomenti....

  7. #7
    Utente di HTML.it L'avatar di ilgiovo
    Registrato dal
    Aug 2001
    Messaggi
    518
    NOVITà: per la soluzione 2) ho scoperto che dava Automation Error perchè quando generavo il file batch poi non lo chiudevo e quindi restava in uso dal processo che l'aveva scritto

    adesso però mi dà Permission denied

    eppure ho dato "controllo completo" come permessi sulla cartella per gli utenti IUSR_NOMEMACCHINA e IWAM_NOMEMACCHINA

    suggerimenti?

    grazie
    Cacca!

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.