15/11/10 11:58
gigimaster
Salve a tutti,
il mio obiettivo è quello di lanciare un processo (nel caso specifico un .cmd o .bat) da una pagina web pubblica direttamente sul server che la ospita. In fase di sviluppo mi è sembrato tutto semplice, infatti lanciato il comando:
ProcID = Shell("c:\test.cmd", AppWinStyle.NormalFocus)
(oppure usando la classe System.Diagnostics.Process)
riesco ad avere sul mio pc di sviluppo il risultato aspettato.
Spostando l'applicazione su Windows server 2008 purtroppo non riesco a capire il perchè non funzioni.
In pratica il processo viene lanciato correttamente (lo verifico con il valore di ritorno)
ma video e a log non riesco a vedere il risultato sperato.
La prima cosa a cui ho pensato è ovviamente l'utenza predefinita aspnet dell'application server. Infatti ho settato l'application pool di default per l'esecuzione locale tramite utenza amministrativa. Ma niente, è come se il processo venisse eseguito su un altra sessione.
Il risultato che mi aspetto è riuscire ad agire sulla stessa sessione a cui sono connesso da desktop remoto come amministratore, come se lanciassi a "mano" il file.
Che differenza c'è tra il server di sviluppo e quello di produzione che sto usando nel mio caso specifico?
Spero di avere esposto con chiarezza il mio problema.
Grazie mille in anticipo,
Luigi
il mio obiettivo è quello di lanciare un processo (nel caso specifico un .cmd o .bat) da una pagina web pubblica direttamente sul server che la ospita. In fase di sviluppo mi è sembrato tutto semplice, infatti lanciato il comando:
ProcID = Shell("c:\test.cmd", AppWinStyle.NormalFocus)
(oppure usando la classe System.Diagnostics.Process)
riesco ad avere sul mio pc di sviluppo il risultato aspettato.
Spostando l'applicazione su Windows server 2008 purtroppo non riesco a capire il perchè non funzioni.
In pratica il processo viene lanciato correttamente (lo verifico con il valore di ritorno)
ma video e a log non riesco a vedere il risultato sperato.
La prima cosa a cui ho pensato è ovviamente l'utenza predefinita aspnet dell'application server. Infatti ho settato l'application pool di default per l'esecuzione locale tramite utenza amministrativa. Ma niente, è come se il processo venisse eseguito su un altra sessione.
Il risultato che mi aspetto è riuscire ad agire sulla stessa sessione a cui sono connesso da desktop remoto come amministratore, come se lanciassi a "mano" il file.
Che differenza c'è tra il server di sviluppo e quello di produzione che sto usando nel mio caso specifico?
Spero di avere esposto con chiarezza il mio problema.
Grazie mille in anticipo,
Luigi
aaa