Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 2.0 / 3.5 / 4.0
Problema con System.Diagnostics.Process
martedì 12 gennaio 2010 - 16.35
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
alleusai
Profilo
| Newbie
3
messaggi | Data Invio:
mar 12 gen 2010 - 16:35
Salve a tutti.
Ho un problema nella sviluppo della mia applicazione web con VS2005.
Ho scritto una sub che, nei miei intendimenti, deve aprire un file .pdf.
Ecco il codice:
Protected Sub Visualizza_PDF(ByVal NomeFile As String)
Dim myProcess As System.Diagnostics.Process = New System.Diagnostics.Process()
myProcess.StartInfo.FileName = NomeFile
myProcess.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal
myProcess.Start()
End Sub
Questo codice eseguito sulla macchina di sviluppo funziona benissimo ma, se eseguito sul server (Windows 2003 Server Standard SP2, .NET Framework 2.0, IIS 6.0) vedo nella lista dei processi il processo AcroRd32.exe eseguito da NETWORK SERVICE ma nulla a video.
Ho cercato a lungo una soluzione ma non sono riuscito a trovarla.
C'è qualcuno che può aiutarmi?
Grazie in anticipo,
Alessandro
tonyexpo
Profilo
| Senior Member
229
messaggi | Data Invio:
mer 13 gen 2010 - 09:26
>Salve a tutti.
>Ho un problema nella sviluppo della mia applicazione web con
>VS2005.
>Ho scritto una sub che, nei miei intendimenti, deve aprire un
>file .pdf.
>Ecco il codice:
>Protected Sub Visualizza_PDF(ByVal NomeFile As String)
>Dim myProcess As System.Diagnostics.Process = New System.Diagnostics.Process()
> myProcess.StartInfo.FileName = NomeFile
>myProcess.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal
> myProcess.Start()
>End Sub
>
>Questo codice eseguito sulla macchina di sviluppo funziona benissimo
>ma, se eseguito sul server (Windows 2003 Server Standard SP2,
>.NET Framework 2.0, IIS 6.0) vedo nella lista dei processi il
>processo AcroRd32.exe eseguito da NETWORK SERVICE ma nulla a
>video.
>
>Ho cercato a lungo una soluzione ma non sono riuscito a trovarla.
>C'è qualcuno che può aiutarmi?
>
>Grazie in anticipo,
>Alessandro
Ciao
credo che il tuo problema sia il fatto che sul server l'application pool (l'istanza che esegue il tuo web all'interno di IIS) sia configurato come di default (per massimizzare la sicurezza) con l'utente NETWORK USER. Questo utente appunto non ha diritti di esecuzione all'interno dei dischi di sistema.
Hai quindi 2 possibilità:
o cambi l'utente dell'application pool (vai in iis, sugli application pool cerchi il tuo, e poi cambi l'utente) o cambi i diritti di esecuzione all'eseguibule dell'acrobat reader, per farlo eseguire anche dall'utente NETWORK USER facendo click destro sul file -> security -> add -> utente network user.
Spero di essere stato chiaro, altrimenti chiedi pure
Ciao
Antonio Esposito
MCTS, MCP
http://blogs.dotnethell.it/espositos
alleusai
Profilo
| Newbie
3
messaggi | Data Invio:
mer 13 gen 2010 - 15:10
>>Salve a tutti.
>>Ho un problema nella sviluppo della mia applicazione web con
>>VS2005.
>>Ho scritto una sub che, nei miei intendimenti, deve aprire un
>>file .pdf.
>>Ecco il codice:
>>Protected Sub Visualizza_PDF(ByVal NomeFile As String)
>>Dim myProcess As System.Diagnostics.Process = New System.Diagnostics.Process()
>> myProcess.StartInfo.FileName = NomeFile
>>myProcess.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal
>> myProcess.Start()
>>End Sub
>>
>>Questo codice eseguito sulla macchina di sviluppo funziona benissimo
>>ma, se eseguito sul server (Windows 2003 Server Standard SP2,
>>.NET Framework 2.0, IIS 6.0) vedo nella lista dei processi il
>>processo AcroRd32.exe eseguito da NETWORK SERVICE ma nulla a
>>video.
>>
>>Ho cercato a lungo una soluzione ma non sono riuscito a trovarla.
>>C'è qualcuno che può aiutarmi?
>>
>>Grazie in anticipo,
>>Alessandro
>
>Ciao
>credo che il tuo problema sia il fatto che sul server l'application
>pool (l'istanza che esegue il tuo web all'interno di IIS) sia
>configurato come di default (per massimizzare la sicurezza) con
>l'utente NETWORK USER. Questo utente appunto non ha diritti di
>esecuzione all'interno dei dischi di sistema.
>
>Hai quindi 2 possibilità:
>o cambi l'utente dell'application pool (vai in iis, sugli application
>pool cerchi il tuo, e poi cambi l'utente) o cambi i diritti di
>esecuzione all'eseguibule dell'acrobat reader, per farlo eseguire
>anche dall'utente NETWORK USER facendo click destro sul file
>-> security -> add -> utente network user.
>
>Spero di essere stato chiaro, altrimenti chiedi pure
>Ciao
>
>
>Antonio Esposito
>MCTS, MCP
>
>
http://blogs.dotnethell.it/espositos
Ciao, grazie per la risposta.
Ho controllato i permessi dell'AcroRd32.exe e sono settati su Full Control per tutti gli utenti, incluso il gruppo Users.
Ho provato a cambiare l'identità impostata sull'application pool associato al web site: ho messo Local Service, che ha il controllo completo delle risorse del sistema, ma non è cambiato nulla. Vedo il processo AcroRd32.exe nella lista processi ma a video non appare il documento pdf.
Qualche altro consiglio?
Grazie,
Alessandro
tonyexpo
Profilo
| Senior Member
229
messaggi | Data Invio:
mer 13 gen 2010 - 16:07
scusami... ero altrove con la testa quando ti ho risposto ;)
ma tu vuoi visualizzare un pdf da un client di una pagina web lanciando un processo sul server??????
bè se è così nn riuscirai perchè il processo lo avvii lato server.....
la cosa più semplice per far visualizzare il file sul pc del chiamante è salvare il file in una cartella del web apposita (chiamiamola pdftemp) e fare il Response.Redirect(MapPath(<pathdelfile in pdftemp>))
così l'utente del web potrà navigare al pdf ed eventualmente da li fare quello che vuole tanto sul suo pc lo aprirà con il suo acrobat reader
ricordati ogni tanto di cancellare i file temp inutilizzati.......
se hai ancora problemi scrivi pure
ciao
Antonio Esposito
MCTS, MCP
http://blogs.dotnethell.it/espositos
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !