Passa ai contenuti principali

Procedura per far funzionare un componente a 32 bit (AspSmartUpload, AspImage, ecc.) sotto un SO a 64 bit

Durante il trasferimento di una applicazione in asp classica da un Windows Server 2000 o 2003 a un Windows Server 2008 a 64bit (da IIS 6 a IIS 7), è necessario prestare attenzione a delle modifiche da apportare.

E' necessario, ad esempio:
  • modificare il codice delle pagine per l’invio delle email, passaggio da CDONTS a CDOSYS;
  • configurare SMTP con componente CDOSYS:
  • configurare II7, permessi, ecc.
  • installare e configurare i componenti a 32 bit (esempio ASPSmartUpload o ASPImage) per il funzionamento in un SO a 64 bit
Creazione di una applicazione COM+ per un componente ASP in Ccmponent Services

Se un componente ASP a 32 bit deve essere eseguito su un sistema operativo a 64 bit deve essere aggiunto a un'applicazione COM + in Servizi componenti.
Devono essere importate autorizzazioni appropriate sulla DLL
La descrizione sotto indicata è basato su Windows Server 2008 (x64)

Component Services si trova sotto Strumenti di amministrazione.
Non bisogna mettere una DLL a 32 bit nella cartella System32 di un sistema a 64.
E' consigliato creare una cartella appositamente per DLL del componente in modo da sapere dove sono e non confondersi con altri file.
Se la DLL non è registrata, può essere registrato durante il processo descritto di seguito.
Questa descrizione mostrare come un componente può essere utilizzato in un ambiente a 64 bit, ma questo procedimento è da fare anche se un componente (sia a 32 o 64 bit) ha bisogno di accedere ai file di rete.

Bisogna creare una nuova applicazione vuota.
Espandere la vista ad albero sulla cartella denominata COM+ Applications".
Selezionare New e Application dal menu a comparsa.
Si avvia "COM Application Install Wizard"
Vi è una scelta di installare un'applicazione pre-costruiti o creare un'applicazione vuota. Selezionare "Crea un'applicazione vuota."



Dare un nome qualsiasi per l'applicazione.
Per il tipo di applicazione selezionare l'impostazione predefinita, "Server application"



Selezionare Application Identity.
Qui vi sono alcune scelte e l'identità dipende dall'uso.
Evitare di utilizzare l'utente interattivo se il server verrà eseguito con nessun utente loggato, perché allora non c'è nessun utente interattivo e l'applicazione non verrà eseguita.
Abbiamo scelto l'utente di servizio locale, ma questo non sarebbe adatto se l'applicazione dovrà accedere ai file di rete.
Un account separato potrebbero essere creato se permessi spaciali sono necessari.
Ogni account selezionato, verrà utilizzato per eseguire tutti i componenti nell'applicazione e deve avere il permesso di lettura e esecuzione del componente DLL e gli appropriati permessi a ogni file o cartelle.



Utilizzare il pulsante Avanti per accettare le impostazioni per gli Application Roles e che completa le COM Application Instell wizard.
Aggiungere un nuovo componente per l'applicazione. Espandere la visualizzazione ad albero sulla sinistra e aprire la cartella Componenti.
Selezionare Nuovo. Ciò avvia il COM Component Install Wizard.



Importare il nuovo componente che non è registrato, e il sistema registrerà questo come viene importato,
Se si importa un componente esistente, notare che vi è una casella di controllo che consente di selezionare componenti a 32 bir.




Scegliere la DLL del componente e selezionarla.
Una volta selezionata, viene visualizzato il messaggio che indica il file del componente e il nome della classe.
E 'possibile selezionare i componenti complementari. Selezionare Avanti per completare la procedura guidata.




Configurazione dell'applicazione
L'applicazione è stata creata e il componente è stato aggiunto, ma non può funzionare senza ulteriori configurazioni.
L'esatta configurazione necessaria dipende dal sistema operativo.
In Windows 2000 dovrebbe funzionare subito accettando le impostazioni predefinite. Sia su Windows 2003 e Windows 2008, le Application Properties devono essere modificato.

Anche in questo caso nella visualizzazione ad albero, espandere la struttura in modo che il nome dell'applicazione sia visibile (è stato Chestysoft nel nostro esempio) e fare clic destro su di essa.
Selezionare le proprietà dal pop-up menu .
Selezionare la scheda Protezione e deselezionare la casella di controllo denominata "Enforce Access Checks" ("Applica controlli di accesso").
In Windows 2000 questo sarà chiaro per impostazione predefinita, ma non nelle versioni successive.
Se è selezionata il risultato sarà visualizzato l'errore asp 0178 quando si tenta di creare un'istanza del componente.


In Windows 2008 Server vi è un settaggio da apportare nelle Proprietà del Componente, se siete in esecuzione di un componente che deve accedere alla Request ASP o oggetti Response.
Per modificare le proprietà dei componenti, fare clic destro sull'icona e selezionare Proprietà.
La scheda "Avanzate" contiene la seguente schermata in cui si deve selezionare la casella "Allow IIS intrinsic properties" ("Consenti IIS proprietà intrinseche").
Questa proprietà non era presente in Windows 2003 o versioni precedenti e, se non è impostata, qualsiasi componente che utilizza Request o Response genererà un errore.


Riavviare IIS in modo tale che le modifiche abbiamo effetto.
È possibile riavviare anche la COM+ Application.


Permessi alla DLL

L'account utente che utilizza il componente deve avere l'autorizzazione di lettura ed esecuzione sul file DLL.
Se avete impostato l'Application Identity come "servizio locale", l'account è chiamato SERVIZIO LOCALE e questa autorizzazione deve essere data la DLL.
Se il componente scriverà in una cartella, la cartella deve anche avere i permessi impostati per consentire questo account a leggere e scrivere.
Se i file devono essere cancellati o sovrascritti, l'autorizzazione richiesta è "Modifica".
Permesso di scrittura è solo quanto basta per creare nuovi file, a non cancellare o sovrascrivere.

PS: Se questo articolo ti è stato utile o ti è semplicemente piaciuto, regalami un commento :-)
Grazie!
Ciao Matteo

Commenti

Post popolari in questo blog

Sei simpatico come....

QUATTRO RISATE Non è un argomento originale, però alcune esclamazioni che ho sentito e letto non sono male, soprattutto la Numero 1 che ho sentito oggi alla radio al programma Gli Spostati (fantastico) Sei simpatico come... Pippo Inzaghi quando gli fischiano un fuorigioco Sei simpatico come... un trapano nelle gengive Sei simpatico come... un testimone di geova che ti suona il campanello il giorno di Pasqua alle 7.30 (giuro che mi è capitato) Sei simpatico come... quando sei seduto sul cesso e ti accorgi che è finita la carta igienica Sei simpatico come... come pestare una merda di cane con le geox Sei simpatico come... la sveglia che suona alla mattina Sei simpatico come... Massimo Moratti Sei simpatico come...un verbale per divieto di sosta per 5 minuti di ritardo (anche questo mi è capitato) Sei simpatico come... le vesciche ai piedi Sei simpatico come... Daria Bignardi Poi su internet ho trovato questo post http://spostati.blog.rai.it/2009/09/27/sei-simpatico-com

Come far accedere un utente a un solo database tramite Microsoft SQL Server Studio Express

Richiesta: far accede un utente ad un solo database e non far vedere nessun altro database; l'utente collegandosi da Microsoft Sql Server Studio Express non deve vedere neppure i nomi degli altri database. Di default quando creo un utente e gli attribuisco i permessi, l'utente vede comunque l'elenco completo dei database presenti sulla macchina. I passi sotto indicati spiegano come fare questo. Soluzione: voglio creare un utente Pippo che abbia tutti i permessi sul database CMMS Per creare l'utente si deve andare in Protezione , Account di accesso e poi cliccare con il tasto destro sulla voce  Nuovo account di accesso Per creare un nuovo account: inserisco un nuovo nome account (esempio: Pippo) seleziono Autenticazione di Sql Server assegno una password spunto tutte le voci predefinite seleziono il database predefinito (esempio: cmms) Successivamente vado un Mapping utenti: seleziono il database (esempio: cmms) aggiungo il ruoolo di db_

Inni squadre di calcio - Inno Boca Juniors

Club Ateletico Boca Juniors Anthem Boca de mi vida ... con sottotitoli in Italiano Cantitos de la 12 (Club atletico Boca Juniors) Karaoke Cantando com Boca Juniors na Bombonera! Un po' di cori dei tifosi Centenario de Boca Juniors La 12 - Vamos Xeneizes Desde pendejo yo te vengo a ver Y me persigue la policia No se asta cuando me van a correr No se dan cuenta que vos sos mi vida Vamos xeneizes Que hay que poner mas huevos Con esta hinchada Tenes que ser primero Boca Juniors Fan Song Stadium - La 12 - Estrada Estadio de la Bombonera, 01 de octubre de 2006, el Boca marca el tercero y sigue hasta la vitoria 3x2 contra Vélez Boca vs. Gremio (Final Copa Libertadores)