8
votes

Comment avez-vous débogué / exécuter des pages ASP classiques dans Visual Studio 2008?

Chaque fois que j'essaie d'ouvrir une page ASP classique lors de l'exécution du site de VS2008, je reçois l'erreur: "Ce type de page n'est pas servi".

Comment déboguer / exécuter des pages ASP classiques dans Visual Studio 2008?

Anthonywjones a la bonne réponse, mais cela ne me laissait pas choisir une réponse pour une raison quelconque.
Voici un tutoriel que j'ai trouvé qui entre dans plus de détails comment configurer VS2008 et XP pour déboguer ASP classique


0 commentaires

4 Réponses :


3
votes

Utilisez IIS pour le serveur et la réponse.write pour le débogage. La façon dont nous l'avons fait "de retour dans la journée";)


1 commentaires

Umm ... Yikes, je n'ai jamais fait comme ça, même "de retour dans la journée" et je reviens.



13
votes

Le serveur Web de développeur (Cassini) prend uniquement en charge l'ASP.NET et le contenu statique.

Vous avez besoin d'une instance d'IIS en cours d'exécution sur votre machine DEV.

Windows XP

On XP Vous devez modifier le site Web par défaut afin que son répertoire domestique pointe dans votre dossier racine de sites ou crée un nouveau répertoire virtuel et la configure comme une application. Dans les deux cas, vous voudrez définir l'isolation de l'application sur "HIGH"

Appuyez sur votre site Web directement avec un navigateur, puis dans VS 2008 Utilisez Debug-> Joindre au processus. Vous devez vous attacher à un processus avec le nom "DLLHOST.EXE". Il y en aura plus d'un mais probablement, seul l'un d'entre eux contiendra le mot "script" dans la colonne Type et c'est celui que vous voulez. Assurez-vous que la case "Joindre à" au-dessus de la liste des processus contient "Script".

Vista / Windows 7

Vista et Windows 7 utilisera IIS7 et qui vous permettra de créer un nouveau site si c'est votre préférence. Assurez-vous que l'application a son propre pool d'applications.

La procédure est alors beaucoup la même sauf que vous recherchez plutôt des processus W3WP.EXE. S'il y a plus d'un qui montre "script" dans le type, vous pouvez simplement attacher à tous.


Avec cela en place, vous pouvez définir des points d'arrêt, examiner des exceptions et faire toutes les choses normales que vous pouviez faire avec le débogage de script.


3 commentaires

Pourriez-vous vous enforer cette réponse plus. Il y a des lignes de jeton, "votre dossier racine de sites" mon site racine de mon site? Ou mon dossier racine de sites? Quel est mon dossier racine "Sites", ou quel est le dossier racine "de mon site"? Comment pouvez-vous déboguer des choses qui se passe avant qu'un navigateur ne frappe?


@Ian: le dossier racine Dans ce contexte est le dossier qui apparaît comme le "nom du projet" sous le nœud de solutions de l'explorateur de solutions VS pour un projet de site Web. C'est le ce dossier que vous seriez dans IIS comme étant le répertoire de base de la demande à déboguer.


@Ian: Quel genre de choses se passe avant qu'un navigateur ne frappe? Parlez-vous du début de l'application / de la session qui se produit sur le premier coup? Utilisez le mot-clé VBScript Stop à un débogueur, puis choisissez l'instance VS qui dispose du site Web "Projet" chargé de la liste fournie.



-2
votes

Comme Anthonywjones dit, vous ne pouvez pas déboguer du code non-asp.net dans Visual Studio Development Server.

Toutefois, si vous avez installé IIS 6.0 installé dans votre machine, vous pouvez utiliser le débogueur de script Microsoft, qui sera déjà installé dans votre machine (la mine a).

Ici, vous pouvez apprendre à activer l'IIS 6.0 d'être débogué: http: //www.microsoft.com/technet/prodttechnol/windowsserver2003/library/iis/3C7830B4-DF5C-41A2-9890-C201EB774C89.MSPX?Mfr=true


3 commentaires

"Vous ne pouvez pas déboguer le code non-asp.net dans Visual Studio" n'est pas vrai, vous pouvez simplement activer le débogage du côté du serveur dans IIS et joindre le processus DLLHOST.EXE à l'IDE pour déboguer le code ... Je l'ai fait mille fois avant ....


+1, puisque vous avez raison, "Vous ne pouvez pas déboguer le code non-asp.net dans Visual Studio Development Server". Bien que je pense que vous pouvez déboguer le code non-asp.net dans Visual Studio. Je laisserai à @Ramesh VEL pour poster des mesures pour sauvegarder sa réclamation.


Vous ne devez pas mettre des apostrophes où vous avez créé le texte @RAVESH VEL. Je n'ai pas dit cela dans mon texte. J'ai seulement dit que vous ne pouvez pas héberger aucun code ASP .NET dans le serveur de développement, non dans le VS dans son ensemble.



1
votes
Assuming you are running Windows XP with IIS installed and VS 2008 with the
default settings pref "General Developer Settings" you need to enable ASP
debugging in IIS:

Open Internet Information Server management console
Right click the "Default Web Site"
Left click "Properties"
Select the "Home Directory" tab
Left Click the "Configuration" button
Select the "Debugging" tab
Check both fags in the Debugging Flags section
Click Ok on all the dialogs until you are back to the management console
Close the management console

You now need to set permissions, you need to ensure that the IWAM user and the
IIS authenticated user have read access to the ASP file you want to debug.  I
find working as an administrator helps with permissions.  Note permissions will
probably be your biggest hurdle.

Now you need to edit your ASP page and place the word "Stop" in the code just
before where you want to debug, Note: you require to be logged into the Console
session in windows if you are using Remote Desktop.

Browse to the page in question and you shout be prompted to debug, you will then
choose what debugger you want to use, select VS2008, now you are debugging
Classic ASP.

Note:
This is from memory so if you have any trouble let me know, also VS2005 is
better for debugging Classic ASP.

I don't know if the Express editions will work with those instructions.

All asp pages have to be hosted in IIS.


0 commentaires