Példák bejelentkezési parancsfájlok

Példák input / output forgatókönyvek

Több forgatókönyv alábbiakban tárgyaljuk (melyek közül kettő a hagyományos szakaszos fájlok), hogy lehet használni, mint egy bemeneti vagy kimeneti forgatókönyvek.

Csatlakozó hálózati meghajtók és idő szinkronizálása felhasználói regisztráció

Azok, akik többet megtudni a funkciók a Windows batch fájlokat és a parancsokat, amelyek használják őket, ajánljuk a korábbi könyv [8].

Tegyük fel, hogy egy adott felhasználói regisztráció, tennünk kell a következőket:

1. Szinkronizálás rendszer idején a kliens munkaállomás a rendszer időt Server1.

2. Csatlakoztassa a meghajtó M: a hálózati megosztás \\ Server1 \ Letters.

3. Adja meg a C: \ TEXT a kliens számítógépen közös használatra a nevét könyveket.

Listing 11.9. Példa parancs bemeneti fájl script

REM Név: logon.bat

REM Leírás: Egy batch fájlt a bejelentkezési szkript

NET TIME \\ Kiszolgalo1 / SET

NET USE M: \\ Server1 \ Letters / persistent: NEM

Net share MyTxt = C: \ TEXT

tiltjuk mód párhuzamos parancsokat a képernyőn az első sorban a fájl logon.bat:

Idő szinkronizálás a szerver \\ Server1 készítünk egy kulcs / SET a parancs NET TIME:

NET TIME \\ Kiszolgalo1 / SET

Hálózati meghajtó csatlakozik NET USE parancsot:

NET USE M: \\ Server1 \ Letters / persistent: NEM

Kulcs / persistent: NO NET USE parancs létrehozásához szükséges ideiglenes kapcsolatokat (nem konzervált, ha a felhasználó kapcsolat megszakad). Ha a csatlakozások volt az állandó (/ persistent: YES), akkor a következő alkalommal, amikor egy felhasználó bejelentkezik a hiba történt (újrahasználat meglévő kapcsolat).

Végül a C mappát: \ TEXT nyilvános használatra rendelkezésre parancs net share:

Net share MyTxt = C: \ TEXT

Interaktív kiválasztása indítási programok

Mint ismeretes, az al-program (Programok) Windows Start menüben van olyan elem Indítás (indítás), ahol meg lehet tenni parancsikonokat azokat a programokat, amelyeket figyelembe kell automatikusan elindul, amikor a felhasználó bejelentkezik. Azonban a folyamat a felhasználói profil betöltésekor nem képes futtatni akármilyen bizonyos programokat a Startup mappában - akkor futtathatja az összes programot, vagy nem fut semmilyen (ez megköveteli a regisztrációs folyamat a rendszerben kulcsa ).

Fogjuk írni a forgatókönyvet Logon.js, amellyel a felhasználó választhat, amikor belépnek indítási programok; hozzárendelése a szkript a bejelentkezési szkript csoportházirend, tesszük az alkalmazás indítási folyamat interaktív.

Kezdjük azzal, hogy hozza létre a könyvtárat% SystemDrive% \ Documents and Settings \ All Users \ főmenübe, amely parancsikonokat tárolt programok a Start menüben az összes felhasználó számára, mappa Szelektív indítás, és tegye a címkéket a kívánt alkalmazás (ábra. 11,17) .

Ezt követően, a címkék a szokásos Startup mappában az eltávolítani kívánt. Most nézzük meg az algoritmus a Logon.js bejelentkezési parancsfájlt.

Először is meg kell határozni az utat az egyéni indítómappába (változó PathStartup). Ehhez használja az objektum WshSpecialFolders:

// Létrehozunk egy objektumot rendszerhej

// Létrehozunk egy objektumot WshSpecialFolders

// meg egyéni útját a Startup mappába

Példák bejelentkezési parancsfájlok

Ábra. 11.17. Új mappa Szelektív indítás

Ismerve az elérési utat a kívánt mappát, akkor hozzon létre egy gyűjtemény összes fájlt, hogy van benne (változó fájlok):

// Létrehozunk egy objektumot FileSystemObject

// Létrehozunk egy mappa objektum a mappa egyedi indítási

// Létrehozunk egy gyűjtemény egyedi indítási fájlokat egy könyvtárban

Ezt követően, ebből egy párbeszédablak megkérdezi, hogy szeretné futtatni a programot a Startup mappában van szüksége szakaszos üzemmódban, azaz egyszerre (ábra. 11,18).

Ábra. 11.18. Program kiválasztása indulási mód (szakaszos vagy interaktív)

Attól függően, hogy a gomb megnyomásakor a párbeszédablakban, akkor hozzárendeli a logikai IsRunAll. meghatározza a program indításakor mód (. IsRunAll hamis, ha a program kérni fogja futtatni az egyes programok, egyébként az összes program fut figyelmeztetés nélkül):

// megjeleníti a kérést, hogy kezdjen minden programot egyszerre

Res = WshShell.Popup ( "Run, ha minden csatornát?", 0,

"Szelektív indítás", vbQuestion + vbYesNo);

// állapítható meg, ha az „Igen” gomb megnyomása

Továbbá, egy while ciklus keresztül az összes fájlt a gyűjtemény fájlok; Fájl változó megegyezik az aktuális fájlt a gyűjtemény:

// Áthurkolt az összes fájlt a Szelektív indítás könyvtár

// Létrehozunk egy fájl áthelyezése az aktuális kollekció elem

// Ugrás a következő fájlt a gyűjtemény

Korábban az interaktív szoftverek trigger mód (IsRunAll változót false) került kiválasztásra, akkor futtatnia kell az aktuális fájl (ábra 11.19.):

// Zero változó Res Res = 0;

if (! IsRunAll) // a program fut egy

// megjeleníti a kérés egy program elindítása

Res = WshShell.Popup ( "Run" + File.Name +, 0, "Szelektív indítás", vbQuestion + vbYesNo "?");

Ábra. 11.19. Kérjen egy program elindítása a Startup mappában

Ha a felhasználó úgy dönt, hogy fut a program (változó Res egyenlő vbYes), illetve programok futnak kötegelt módban, akkor futtassa a jelenlegi program minimalizált ablak Futtatás módszerrel rendszerhej kifogást:

if ((IsRunAll) || (Res = vbYes))

// Indítsuk el a jelenlegi program egy minimalizált ablakban

Mivel a teljes nevét a program válthatják hiányosságok, a nevet kell idézőjelek közé az escape-szekvencia. "

Egy másik megvalósításban a módszerrel Run Run programok, melyek neve tartalmazza hiányosságok, lehetőség van arra, hogy használja a rövidebb nevek mappák és fájlok tulajdonságai ShortPath Object Fájl: WshShell.Run (File.ShortPath, vbMinimizedFocus);

A teljes szöveg Logon.js script listán látható 11.10.

Listing 11.10. bejelentkezési szkript, amely lehetővé teszi, hogy kiválassza a program indításakor

/ * Leírás: A bejelentkezési szkript, amely lehetővé teszi, hogy válassza ki a programok * /

FSO, // például a FileSystemObject objektum

WshHej, // objektum példány WshHej

WshFldrs, // objektum példány WshSpecialFolders

PathStartup, // Út az egyéni indítómappából

Folder, // hogy például egy mappa objektum a mappa

Fájlok, // A gyűjtemény fájlok egy egyéni indítómappába

Fájl // például a fájl objektum a parancsikon a mappában

Res, // Az eredmény a gombok megnyomásával párbeszédablakaiban

IsRunAll; // logikai zászló jelzi, hogy vagy nem fut

// egyszer minden csatornát indításkor

// Beállítjuk az első állandó dialógus ablakok

// Létrehozunk egy objektumot rendszerhej

// Létrehozunk egy objektumot WshSpecialFolders

// meg egyéni útját a Startup mappába

// Létrehozunk egy objektumot FileSystemObject

// Létrehozunk egy mappa objektum a mappa egyedi indítási

// Létrehozunk egy gyűjtemény egyedi indítási fájlokat egy könyvtárban

// megjeleníti a kérést, hogy kezdjen minden programot egyszerre

Res = WshShell.Popup ( "Run, ha minden csatornát?", 0,

// Meghatározza, hogy a gomb megnyomásakor igen

// Áthurkolt az összes fájlt a Szelektív indítás könyvtár

// Létrehozunk egy fájl áthelyezése az aktuális kollekció elem

// Zero változó Res

if (! IsRunAll) // a program fut egy

// megjeleníti a kérés egy program elindítása

if ((IsRunAll) || (Res == vbYes))

// Indítsuk el a jelenlegi program egy minimalizált ablakban

// Ugrás a következő fájlt a gyűjtemény

A leggyorsabb megoldás erre a problémára az, hogy hozzon létre egy batch file Logoff.bat (Listing 11.11), és jelölje ki azt a kilépést script minden felhasználó számára. Az eredmény ez a batch fájl látható lesz a parancs ablakban (ábra. 11,20).

REM Név: Logoff.bat

REM felhasználó dokumentumai

ECHO felhasználói munkamenet End% felhasználónév%.

Példák bejelentkezési parancsfájlok

Ábra. 11.20. Az eredmény Logoff.bat kilépési forgatókönyvet a felhasználó Popov

példányát csak a megváltozott fájlok (kulcs / D);

másolja az összes alkönyvtárat, beleértve az üres (a / E);

felülírni fájlokat a felhasználó jóváhagyása nélkül (kulcs / Y).

Táblázat 11.2. A környezeti változók, amelyek hasznosíthatók a belépési / kilépési forgatókönyvek

A név, amely alatt vették nyilvántartásba a bejáratnál, hogy a felhasználó hálózati

Azt is írni egy forgatókönyvet WSH (nevezzük ezt a forgatókönyvet Logoff.js) biztonsági mentés van szükség, ami természetesen sokkal nagyobb lesz a térfogata, mint a batch fájl, de az üzenet jelenik meg egy szép grafikus dialógusok (ábra. 11,21-11,23) .

Először is, a script Logoff.js rendszerhej példányosítjuk tárgyakat. FileSystemObject és WshSpecialFolders. ami után a változó SHomePath útjára lépett, hogy az aktuális felhasználó iratok (különleges nevű mappát a My Documents):

// Létrehozunk egy objektumot rendszerhej

// Létrehozunk egy objektumot FileSystemObject

// Létrehozunk egy objektumot WshSpecialFolders

// meg egyéni útját a Startup mappába

// Adjuk meg a felhasználó nevét

// Formában a teljes elérési utat a mentés dokumentumok

// Kérdezze a mentési eljárás

Ábra. 11.21. Egy párbeszédablak kérdezi, hogy a másolni kívánt

Ha hiba történik a változó ISERROR catch blokkban van beállítva, hogy igaz, akkor egy párbeszédablak megfelelő üzenetet (lásd ábra 11,22 ..) jelenik meg a képernyőn:

catch (e)

// hibaüzenetet jelenít meg

Mess = "Hiba történt másolás közben a könyvtárat" + SHomePath + "\ nKod error:" + e.number + "\ nLeírás" + e.description;

WshShell.Popup (MES, 0, "a felhasználói kimeneti" + SUserName, vbCritical);

Ábra. 11.22. Egy párbeszédablak egy üzenetet a hiba

Ha a folyamatot a másolás nincsenek hibák (ISERROR változó hamis), akkor a felhasználó is adott erre az üzenetre (lásd Figure 11.23 ..):

WshShell.Popup (MES, 0, "a felhasználói kimeneti" + SUserName, vbInformation);

Ábra. 11.23. Egy párbeszédablak egy üzenetet a hiba

A teljes szöveg Logoff.js script listán látható 11.12.

/ * Leírás: Release Script, amely lehetővé teszi a biztonsági mentés * /

WshHej, // objektum példány WshHej

WshFldrs, // objektum példány WshSpecialFolders

FSO, // például a FileSystemObject objektum

SUserDocPath, // A mappa elérési útvonala a felhasználó dokumentumokat

SUserName, // Felhasználónév

SBackupPath = "D: \\ Backup", // Directory biztonsági másolatot

// Beállítjuk az első állandó dialógus ablakok

// Létrehozunk egy objektumot rendszerhej

// Létrehozunk egy objektumot FileSystemObject

// Létrehozunk egy objektumot WshSpecialFolders

// meg egyéni útját a Startup mappába

// Adjuk meg a felhasználó nevét

// Formában a teljes elérési utat a mentés dokumentumok

// Kérdezze a mentési eljárás

SBackupPath +, 0, "User Exit" + SUserName, vbQuestion + vbYesNo) "?";

ha (Res == vbYes)

> Fogás (e)

// hibaüzenetet jelenít meg

Mess = "Hiba történt másolás közben a könyvtárat" + SHomePath + "\ nKod error:" +

WshShell.Popup (MES, 0, "a felhasználói kimeneti" + SUserName, vbCritical);

WshShell.Popup (MES, 0, "a felhasználói kimeneti" + SUserName, vbInformation);

Több forgatókönyv alábbiakban tárgyaljuk (melyek közül kettő a hagyományos szakaszos fájlok), hogy lehet használni, mint egy bemeneti vagy kimeneti forgatókönyvek.

Kapcsolódó cikkek