2 votes

Comment obtenir tous les noms de fonctions en VBScript et NE PAS exécuter les codes script en utilisant msscriptcontrol ?

Comment obtenir UNIQUEMENT le nom de toutes les fonctions et procédures, au lieu d'écrire moi-même un analyseur syntaxique ?

Prenez les codes vbs suivants comme exemple, qui comprennent 1 fonctions, 1 procédures, 2 déclarations, je veux obtenir le nom de la fonction et de la procédure : 1)" GetValue " 2) " ABC_Résultat "

Bien que IScriptControl::AddCode fourni par Microsoft peut fonctionner, dont le problème est que il exécute TOUJOURS les déclarations (telles que "ABC_Result 20", "While True Wend") par défaut ?

// \test.vbs

Function GetValue(varVal)
  GetValue = varval*2
End Function

Sub ABC_Result(count)
  'msgbox is not allowed in server side, so use beep

  Dim WshShell
  Set WshShell = CreateObject("Wscript.Shell")
  beep = chr(007)
  Dim i
  For i=0 To CInt(count)
    WshShell.Run "cmd /c @echo " & beep, 0
  Next
End Sub

ABC_Result 20

While True
Wend

0voto

boost Points 3169

L'écriture d'un "analyseur" peut être une solution, en utilisant des fonctions de chaîne de caractères comme Instr() ou même des expressions régulières.

Cependant, il existe des outils tiers comme http://www.sourceformat.com/vbscript-formatter.htm qui peut vous donner des listes de références croisées.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X