Le débogage de CGI à l’aide du débogueur de Visual C++ juste-à-temps

RÉSUMÉ

Débogage d’une application Interface CGI (Common Gateway) est différent de débogage sous la forme d’une application console. Cet article illustre la façon correcte de déboguer une application CGI sous Windows Windows NT Service Pack 4 (SP4) est l’utilisation du débogueur de Microsoft Visual C++ juste à temps (JIT).

Plus d'informations

Spécifiez Microsoft Visual C++ en tant que votre débogueur JIT (case à cocher JIT débogage dans le menu d’outils VC puis Options). Puis, ajoutez une instruction DebugBreak() dans le code source CGI.

Méthode 1 (lancement CGI en tant que LocalSystem)

  1. Définissez la propriété de métabase de CreateProcessAsUser False à l’aide de la ADSUTIL ou l’éditeur de métabase (MetaEdit) pour forcer IIS à utiliser l’API CreateProcess pour démarrer une application CGI. Après avoir modifié la propriété CGI exécutera sous le compte système Local. Par exemple :
    C:\>adsutil SET W3SVC/1/Root/Scripts/MYCGI.exe/CreateProcessAsUser 0
    ADSUTIL est introuvable dans le répertoire suivant (si le composant facultatif de Windows Scripting Host de Windows NT Option Pack n’est installé). :
    WINNT\Sytem32\Inetsrv\Adminsamples


    MetaEdit est disponible dans le Kit de ressources IIS.
  2. Appeler l’application CGI à partir d’un navigateur.
  3. Une boîte de dialogue d’erreur s’affiche sur le serveur après qu’un point d’arrêt a été atteint. Cliquez sur Annuler pour démarrer le débogage.

    Notez que la configuration de la base ou NTLM authentification pour l’application CGI n’aide le débogage JIT. Le message d’erreur suivant sera généré lorsque vous cliquez sur Annuler:
    Erreur d’exécution !
    Programme : < MSDevDir\bin > \MSDEV.exe
    fermeture anormale du programme
    Cette erreur ne se produit pas sur Windows NT 3.51. Il se produit sur Windows NT 4.0 car l’application CGI ne dispose pas de l’accès de sécurité approprié à la station Windows interactive et le bureau. Par conséquent, le débogueur de Visual C ne peut pas s’initialiser correctement.

Méthode 2 (appliquer les DACL NULL à la station Windows interactive et le bureau, le « winsta0\\default »)

  1. Créer une application d’assistance et de l’exécuter avant de démarrer le débogage CGI.
  2. Appeler l’application CGI à partir d’un navigateur.
  3. Une fois que la boîte de dialogue application affiche sur le serveur cliquez sur Annuler pour démarrer le débogage.

    Vous pouvez déboguer une application CGI exécuté sous un compte avec cette approche. Les listes DACL pour les objets de bureau et la station Windows interactive peuvent être réinitialisés de déconnexion, puis connectez-vous de nouveau.

RÉFÉRENCES

Pour plus d’informations, cliquez sur les numéros d’article ci-dessous
Pour consulter les articles suivants dans la Base de connaissances Microsoft :
238788 comment déboguer des applications CGI en cours d’exécution sous IIS
Propriétés

ID d'article : 239535 - Dernière mise à jour : 15 févr. 2017 - Révision : 1

Microsoft Windows NT Server 4.0 Standard Edition, Microsoft Windows NT 4.0 Service Pack 4, Microsoft Windows NT Workstation 4.0 Édition Développeur, Microsoft Windows NT Workstation 4.0 Édition Développeur, Microsoft Windows NT Workstation 4.0 Édition Développeur, Microsoft Windows NT Workstation 4.0 Édition Développeur

Commentaires