Resumo
Ao tentar chamar um Script de Visual Basic a partir de um servidor da Web no contexto de um script CGI, o script poderá não funcionar correctamente. O motivo mais provável é que o motor de scripts é normalmente executado no contexto de segurança de IUSR_Machine criados pelo IIS quando é instalado. Infelizmente, o Cscript.exe (o motor de script) requer a presença de determinadas entradas de registo de utilizador de IUSR_Machine. Uma vez que um ramo de registo HKEY_CURRENT_USER não está disponível para o IUSR_Machine, o IIS irá carregar o HKEY_USERS \. Ramo predefinido no seu lugar. No entanto, o HKEY_USERS \. Ramo predefinido não contém as chaves necessárias e entradas para o motor de script. Nestes casos, irá ocorrer um erro CGI, sem quaisquer informações adicionais. Ou, se o ficheiro Cscript.exe foi iniciado em modo batch, será apresentado um erro indicando que não foi possível carregar as definições para o utilizador especificado. Este documento mostrará como configurar o computador com o IIS para permitir que os Scripts de Visual Basic a ser executado como um script CGI.
Mais Informações
Este artigo pressupõe que o Windows Script Host é instalado no computador de servidor IIS; a opção de instalação predefinida do NT Option Pack fazê-lo. Utilize os seguintes passos para activar o suporte de VBScript:
-
Abra uma linha de comandos. Para tal, siga estes passos:
-
Clique em Iniciar e, em seguida, clique em Executar.
-
Escreva cmde, em seguida, clique em OK.
-
-
Localize a pasta Inetpub\AdminScripts. (Esta localização pode variar consoante a instalação do Internet Information Server).
-
Escreva os seguintes comandos:
cscript adsutil. vbs SET w3svc/CreateCGIWithNewConsole "1"
cscript adsutil. vbs SET w3svc/CreateProcessAsUser "0"
-
Configure a extensão. vbs para ser mapeado para Cscript.exe localizado no directório %SystemRoot%\System32.. Efectue este procedimento através da Consola de gestão da Microsoft. Especificamente, os passos de configuração para IIS4 são os seguintes:
-
Execute a aplicação de IIS4 Consola de gestão .
-
Edite as propriedades para o Web site (botão direito do rato no Web site na apresentação de árvore e seleccione Propriedades).
-
Seleccione o separador ' Directório raiz .
-
Na caixa Definições da aplicação , seleccione a configuração.
-
No separador Mapeamentos de aplicações , seleccione Adicionar.
-
O ficheiro executável será o seguinte numa máquina WinNT 4.0 (Certifique-se utilizar o caminho correcto para Cscript.exe no CD de instalação WinNT):
C:\WINNT\system32\CSCRIPT.EXE.exe %s %s
Introduza a extensão . vbs .
-
Certifique-se de que estão seleccionadas as caixas de verificação do Motor de Script e Verifique se o ficheiros existe .
-
Guarde o ficheiro, clicando em OK, Aplicar, ' OK 'e ' OK ' novamente.
-
-
Utilizar o Editor de registo, crie as seguintes chaves e entradas:
HKEY_USERS\.DEFAULT\Software\Microsoft\Windows Script HostHKEY_USERS\.DEFAULT\Software\Microsoft\Windows Script Host\Settings
Certifique-se de que todos os utilizadores tem acesso de leitura a estas duas chaves. Agora crie as seguintes entradas em:
HKEY_USERS\.DEFAULT\Software\Microsoft\Windows Script Host\SettingsBatchMode: REG_DWORD: 0DisplayLogo: REG_DWORD: 0Timeout: REG_DWORD: 0
-
Agora, copie o ficheiro de script. vbs para um directório virtual no servidor que tem permissões de execução/script. Por predefinição, o directório /scripts terão as permissões necessárias.
Deverá conseguir testar a configuração funciona ou não, criando o seguinte script:
Option ExplicitWScript.Echo "Content-Type: text/html"WScript.EchoWScript.Echo "If you see this, it worked."
Guarde o script acima no directório /scripts como Test.vbs. Agora invocar o script utilizar qualquer browser com o seguinte URL:
http://server/scripts/test.vbs.
Nota: limitações semelhantes se aplicam a todos os situação em que um script de Cscript.exe é iniciado a partir do contexto de segurança do sistema local ou um sistema local, representando um utilizador. As alterações acima para o registo deverão remediar nestas situações.
Referências
Microsoft Internet informações documentação Online.