vbscript — συγκεντρωτικός οδηγός — DedSec Project
vbscript — συγκεντρωτικός οδηγός VBScript Τι προσφέρει η γλώσσα Η VBScript είναι τεχνολογία παλιών Windows scripts και classic ASP. Η διαθεσιμότητα και η πολιτική ασφαλείας συχνά την…
VBScript
Τι προσφέρει η γλώσσα
Η VBScript είναι τεχνολογία παλιών Windows scripts και classic ASP. Η διαθεσιμότητα και η πολιτική ασφαλείας συχνά την περιορίζουν.
Μικρό παράδειγμα προς μελέτη
Dim total
total = 2 + 3
WScript.Echo total
Σε εξουσιοδοτημένο παλιό σύστημα ξεχώρισε Windows Script Host από server-side ASP.
Τι να επαληθεύσεις
Κατάγραψε την πραγματική έκδοση εργαλείου, τις απαιτούμενες εξαρτήσεις και την έξοδο σε δοκιμαστικά δεδομένα για τη VBScript. Πρόβλεψε το αποτέλεσμα πριν το ελέγξεις και διατήρησε την αρχική και τη διορθωμένη εκδοχή ώστε να φαίνεται η αιτιώδης διαφορά. Μην αποκαλείς ένα απόσπασμα εκτελεσμένο αν δεν έχεις το κατάλληλο περιβάλλον.
Παγίδα ειδική για το θέμα
Μην προτείνεις ενεργοποίηση παρωχημένων μηχανισμών μόνο για άσκηση· προτίμησε υποστηριζόμενο αυτοματισμό.
Εργαστήριο εξάσκησης: VBScript
Πραγματικό περιβάλλον Windows
Το VBScript λειτουργούσε ιστορικά στο Windows Script Host και δεν τρέχει αυτομάτως σε Linux ή Termux επειδή είναι απλό κείμενο. Σε προσωρινό squares.vbs γράψε:
Option Explicit
Dim values, item
values = Array(1, 2, 3)
For Each item In values
WScript.Echo item * item
Next
Σε κατάλληλο Windows host, η cscript //nologo squares.vbs αναμένεται να εμφανίσει 1, 4, 9. Κατέγραψε λειτουργικό, έκδοση και πραγματική υποστήριξη VBScript, η οποία έχει αλλάξει σε νεότερες εκδόσεις Windows. Το αρχείο δεν είναι Python script και δεν τρέχει με python.
Variants και μετατροπές
Τα στοιχεία Array και η μεταβλητή επανάληψης είναι Variants. Πρόσθεσε "bad" και δοκίμασε πολλαπλασιασμό για να δεις το πραγματικό σφάλμα τύπου. Σύγκρινε IsNumeric πριν από μετατροπή με CInt και όρισε τι θα κάνει η εφαρμογή όταν λάβει κενό string. Μην υποθέτεις ότι οποιοδήποτε κείμενο μετατρέπεται αυτόματα σε αριθμό.
Ορατότητα λαθών
Αφαίρεσε προσωρινά το Option Explicit και γράψε λανθασμένα το όνομα μεταβλητής. Η αυτόματη δημιουργία μεταβλητών μπορεί να κρύψει απλά τυπογραφικά. Στη σωστή έκδοση διατήρησε το Option Explicit. Το γενικό On Error Resume Next δεν λύνει την αιτία, απλώς επιτρέπει συνέχεια μετά από αποτυχία.
Δεύτερη άσκηση
Διάβασε μικρό προσωρινό αρχείο CSV-like και άθροισε έγκυρους ακέραιους, αναφέροντας τις γραμμές που απορρίπτονται. Μην αλλάξεις πραγματικά δεδομένα ή registry. Δοκίμασε κενή είσοδο, αρνητικό αριθμό, άκυρο κείμενο και διπλή επικεφαλίδα. Πηγή: https://learn.microsoft.com/previous-versions/windows/internet-explorer/ie-developer/scripting-articles/
VBScript — Διαδρομή ουσιαστικής εξάσκησης
Κατανόηση πραγματικού execution model
Με WScript.Arguments διάβασε και έλεγξε filename και εμφάνισε report χωρίς μεταβολή αρχείων.
Ελεγχόμενη αποτυχία και διόρθωση
Σύγκρινε IsEmpty, IsNull και string μηδενικού μήκους. Χειρίσου filesystem errors χωρίς γενικό On Error Resume Next.
Ανεξάρτητη πρακτική εργασία
Γράψε report μέσω FileSystemObject σε προσωρινό folder. Κατάγραψε διαφορές Windows εκδόσεων και πότε προτιμάται PowerShell.