anvendelse af windows 7 - del 18

,,,,,, tip: du kan finde flere oplysninger om automatisering af lti indsættelse i vinduerne 7 ressource kit fra microsoft presse.jeg er hovedforfatteren til denne ressource - og jeg fastholder også de uofficielle støtte sted til windows 7 ressource, kit, hvor du vil finde de seneste opdateringer og andre nyttige oplysninger., i del 16 i denne serie, du lærte at bruge mdt database for at skræddersy deployeringen af windows 7 baseret på uuid af hvert enkelt computer.i den artikel, du også har lært at bruge wmi at bestemme uuid af en computer, hvis dette uuid ikke er udstillet i systemet er bios eller den ledsagende dokumentation.den metode, vi plejede at gøre det her, det var lidt rodet, plus den computer, hvis du ønsker at bestemme uuid allerede skal have haft en windows - styresystem er monteret på.dette bringer op, et spørgsmål: kan de bruge wmi at bestemme uuid af en computer, hvis der ikke er monteret på det operationelle system?svaret er ja.for at gøre dette er vi nødt til først at rense scripting ting, vi har i de sidste to artikler.så er vi nødt til at bygge en skik vinduer preinstallation miljø (winpe) image, tilføje de manuskripter til dette billede, og brænd det billede, at cd - medier.du kan bruge denne cd - et lille metal computer i winpe og løbe manuskriptet til bestemmelse af systemet er uuid.,, og det er, hvad denne artikel og den næste handler om.først i denne artikel, vil vi skabe en ren lille manuskript, som vil have en computer er uuid uden fumler rundt.så i den næste artikel, vi skal lære at skabe en differentieret winpe "værktøjer" cd, du kan bruge til at køre det på et lille metal system, der ikke har nogen operativsystem installeret med henblik på at fastslå, at systemet er uuid.når du har brugt din winpe cd - manuskriptet på en række mål, computere, du kan gå ind i disse uuids i mdt database og indsætte tilpassede vinduer billeder til hver computer som ønsket.tip:,,,,, hvis du er ny i wmi scripting, tjek min 14 del indledende serie artikler om windowsnetworking.com titlen forvaltning af vinduer net ved hjælp af manuskripter.,, manuskript til at bestemme uuid af en computer, i del 16 i denne serie, så vi, hvordan vi kan afgøre uuid af en computer med wmi som følger:,,, vi startede med, displayclassproperties.vbs, manuskript fra del 13 af min tidligere række scripting artikler, der har navnene på alle de egenskaber en wmi klasse sammen med værdierne af disse egenskaber.næste løb vi wbemtest på computeren til at bestemme, hvordan vi skal vælge den, strwmiquery = < snor >, linje af vores manuskript, således at det vil arbejde på denne computer.de konkrete skridt til at gøre dette, er: a) wbemtest (b) forbindes til rod. cimv2 namespace (c) klik enum tilfælde (d) type win32_computersystemproduct (e) presse, okay.den resulterende produktion fra wbemtest derefter bruges som værdien af < snor > i denne linje i vores manuskript.og dette skal ske manuelt som wbemtest produktion ikke støtter kopi til clipboard!så når manuskriptet var designet, som vi kørte på computeren og indgår som en del af manuskriptet er produktionen var den computer er uuid.,,, det er lidt rodet, selvfølgelig, vi vil ikke have at løbe wbemtest på computeren, eller at bygge det, hver gang vi er nødt til at løbe det.og vi ville hellere have manuskriptet til produktionen, computeren er uuid og ikke en masse andre ting her. og her er, hvordan vi kan gøre dette.vi begynder med den modificerede, displayclassproperties.vbs, manuskript fra del 16 i denne serie:,,, displayclassproperties. vbs, anvendes til at finde uuid af en specifik desktopcomputer med mitch tulloch (www.mtit. kom), mulighed udtrykkeligt, om fejl, genoptage næste dim strcomputer dim strwminamespace dim strwmiquery dim objwmiservice dim colitems dim objitem, strcomputer = "." strwminamespace = "(rod) cimv2", strwmiquery = ": win32_computersystemproduct. identifyingnumber ='mxg5380254 na540, navnet ='py196av-aba a1130e, version ='0n31211ct101ambem00", der objwmiservice = getobject ("winmgmts: ¶ ¶" & strcomputer & strwminamespace & strwmiquery), wscript.echo "antal egenskaber af" & strwmiquery & "klasse er" & objwmiservice. korrektties_. tæller for hver objitem i objwmiservice.properties_, wscript. echo "formuegoder" & objitem.name & vbtab & "værdi" & objitem. værdi, det næste, nu, for at opnå, hvad wbemtest er og returnerer de tilfælde af win32_computersystemproduct klasse, vi bliver nødt til at bruge den swbemservices.instancesof metode i swbemservices objekt.at finde ud af, hvordan jeg gør det, jeg blot tilpasset efter manuskript fra en side af den gode gamle, windows 2000 scripting vejledning (se):,,, strcomputer = ".", som objswbemservices = getobject ("winmgmts: ¶ ¶" & strcomputer & ". cimv2 rod."), der blev colswbemobjectset = objswbemservices.execquery _ ("vælg * fra win32_service"), for hver objswbemobject i colswbemobjectset, wscript. echo "navn:" & objswbemobject. navn,,, min tilpassede udgave af ovennævnte manuskript ser sådan ud:,,, strcomputer = ".", som objswbemservices = getobject ("winmgmts: ¶ ¶" & strcomputer & "en rod. cimv2"), der blev colswbemobjectset = objswbemservices.execquery _ ("vælg * fra win32_computersystemproduct"), for hver objswbemobject i colswbemobjectset, stridentifyingnumber = objswbemobject.identifyingnumber, strname = objswbemobject. navn, strversion = objswbemobject. udgave, wscript.echo "identifyingnumber:" & stridentifyingnumber, wscript.echo "navn:" & strname, wscript.echo "version" & strversion,,, jeg har brug for ovennævnte manuskript at fastlægge værdier de tre egenskaber identifyingnumber, navn og version er, at win32_computersystemproduct klasse har tre væsentlige egenskaber, nemlig (du gættede det) identifyingnumber, navn og version.se det, henvise til den dokumentation, side i denne klasse på msdn.husk, at en central ejendom er en ejendomsret, der giver en unik identifikator for et tilfælde af en klasse, og til at forbinde et tilfælde af en klasse, du har brug for at fastsætte en særlig instans ved hjælp af de vigtigste ejendom i klassen.vigtigste egenskaber er mærket med "nøgle", der i msdn dokumentation henviser til del 13 af min tidligere række scripting artikler til flere oplysninger om væsentlige egenskaber., nu er jeg bare nødt til at fusionere de ovenfor tilpassede manuskript med min tidligere, displayclassproperties.vbs, manuskript med henblik på at skabe følgende nye manuskript, som jeg har nævnt, uuid.vbs (bemærk, at jeg har forenklet det manuskript, men variable definitioner og fejlhåndtering):,,,'uuid. vbs,'displays den uuid af en computer, 'hvor mitch tulloch (www.mtit. kom), strcomputer = "." strwminamespace = "(rod) cimv2", som objswbemservices = getobject ("winmgmts: ¶ ¶" & strcomputer & "en rod. cimv2"), der blev colswbemobjectset = objswbemservices. execquery ("vælg * fra win32_computersystemproduct"), for hver objswbemobject i colswbemobjectset, stridentifyingnumber = objswbemobject.identifyingnumber, strname = objswbemobject. navn, strversion = objswbemobjekt. udgave, strwmiquery = ": win32_computersystemproduct. identifyingnumber =" & stridentifyingnumber _, &. "" navn = "& strname &." "version =" & strversion & chr (39), der blev objwmiservice = getobject ("winmgmts: ¶ ¶" & strcomputer & strwminamespace & strwmiquery), for hver objitem i objwmiservice.properties_, hvis objitem.name = "uuid", wscript. echo objitem.name & "= =" & objitem.value, hvis næste,,, konstaterer, at den vanskelige del her, er at sikre de citerer, er korrekte, i, strwmiquery = < snor >, erklæring.f.eks. oversigten afsluttes med & chr (39), som vedlægges det indre citerer, der er fornødne for at fuldføre syntaks i oversigten.det tog en pille til at få dette til at arbejde det trick, som hjalp mig, blev midlertidigt at indføje en erklæring, wscript.echo strwmiquery, umiddelbart efter, strwmiquery = < snor >, erklæring, så jeg kunne løbe manuskriptet og output - indholdet af den snor for at se, om den snor haft den korrekte syntaks, - en ændring, og det manuskript igen, og så videre, indtil jeg fik syntaks ret.,, afprøvning af manuskriptet, lad os se, om vores script virker ved at løbe fra command-line på en computer, der er vinduer xp monteret på (figur 1):,,,,, figur 1, at uuid.vbs på en computer, som har et operativsystem, lad os gøre vores manuskript endnu lettere at løbe ved at skabe et ledsagende batchfil ved navn, uuid.bat, som lyder som følger:,,, @ echo, cscript.exe //nologo uuid. vbs,,, det gør det lettere at drive manuskriptet og også gør produktionen renere (figur 2):,,,,,, at uuid.bat figur 2: på en computer, som har et styresystem, konklusion, at vores manuskript er klar, er vi nødt til at bygge en winpe image og omfatter vores manuskript i dette billede, så vi kan styre vores manuskript med metal - systemer.du vil lære at gøre det i den næste artikel i denne serie.,,






Previous:
Next Page: