Სარჩევი:

შესავალი VB Script: დამწყებთათვის გზამკვლევი: ნაწილი 2: ფაილებთან მუშაობა: 13 ნაბიჯი
შესავალი VB Script: დამწყებთათვის გზამკვლევი: ნაწილი 2: ფაილებთან მუშაობა: 13 ნაბიჯი

ვიდეო: შესავალი VB Script: დამწყებთათვის გზამკვლევი: ნაწილი 2: ფაილებთან მუშაობა: 13 ნაბიჯი

ვიდეო: შესავალი VB Script: დამწყებთათვის გზამკვლევი: ნაწილი 2: ფაილებთან მუშაობა: 13 ნაბიჯი
ვიდეო: მიხეილ თუთბერიძე, დაპროგრამება, 3(2) 2024, ივლისი
Anonim
შესავალი VB Script: დამწყებთათვის გზამკვლევი: ნაწილი 2: ფაილებთან მუშაობა
შესავალი VB Script: დამწყებთათვის გზამკვლევი: ნაწილი 2: ფაილებთან მუშაობა

ისე, ჩემი ბოლო VBScript ინსტრუქციით, მე ვისწავლე, თუ როგორ უნდა შევქმნა სკრიპტი თქვენი ინტერნეტის გამორთვისთვის Xbox360– ის სათამაშოდ. დღეს მე სხვა პრობლემა მაქვს. ჩემი კომპიუტერი ითიშება შემთხვევით დროს და მინდა შეხვიდე ყოველ ჯერზე, როდესაც კომპიუტერი გადატვირთულია ფაილში. მე მაქვს შეგრძნება, რომ პრობლემა ვიდეო კარტაშია, მაგრამ მინდა დავრწმუნდე. მე ვტოვებ კომპიუტერს ნებისმიერ დროს, მაგრამ არ შემიძლია მისი მონიტორინგი 24/7, ამიტომ ჩემი უმარტივესი გამოსავალია დავწერო დროის ბეჭედი ფაილზე ყოველ ჯერზე, როდესაც ის გადატვირთულია. რადგან ის ყოველ ჯერზე მაძლევს BSOD- ს, შესვლისას მისი გამორთვა რთული იქნება, ასე რომ მე უნდა მივიღო ის, როდესაც ის დაბრუნდება. ეს არის მარტივი ნაწილი. იმის გამო, რომ ეს მხოლოდ დროებითია, სანამ არ გავარკვევ რა არის კომპიუტერში, მე არ ვაპირებ რეესტრში წერას ან სერვისის გაკეთებას, ასე რომ ის ჩატვირთვის დროს დაიწყება. და იმისათვის, რომ ის გადატვირთოს ყოველ ჯერზე, როდესაც ის იხურება, მომიწევს ბიოსის შეცვლა.

ნაბიჯი 1: Bios– ის რედაქტირება, რათა ის გადატვირთოს Power Fail– ში

Bios– ის რედაქტირება, რათა ის გადატვირთოს Power Fail– ში
Bios– ის რედაქტირება, რათა ის გადატვირთოს Power Fail– ში

მე არ ვარ დარწმუნებული, არის თუ არა ჩემი პრობლემა ელექტრომომარაგების გაუმართაობაში, ან ჩემს ვიდეო კარტაში თუ რა არის. მაგრამ მე ვიცი, რომ კომპიუტერი ხშირად იტვირთება. ასე რომ დავრწმუნდე რომ ის გადატვირთულია ელექტროენერგიის გათიშვის შემდეგ (IE: კვების ბლოკი გათიშულია) მინდა შეცვალო ბიოსი. გამომდინარე იქიდან, რომ არსებობს ამდენი ბიოს შემქმნელი, ძალიან ძნელი იქნება ჩამოთვალოთ ამის გაკეთების ყველა განსხვავებული გზა ბიოს სხვადასხვა ეკრანზე, ამიტომ მე უბრალოდ მოგცემთ საფუძვლებს და გაგარკვევთ სპეციფიკა საკუთარ თავზე. ძირითადად თქვენს ბიოსში შესასვლელად უნდა დააჭიროთ ღილაკს ჩატვირთვისას. როგორც წესი, ის იტყვის რაღაცას "დააწკაპუნეთ დელზე პარამეტრებში შესასვლელად" ან "F2". სხვადასხვა მწარმოებლები გაძლევთ სხვადასხვა გზებს, მაგრამ ეს ჩვეულებრივ არის "F2" ან "Del" გასაღები. ნებისმიერ შემთხვევაში დააკვირდით მას და დააჭირეთ ღილაკს, რომელიც გეუბნებათ, რომ მოარტყათ. ახლა თქვენ მიხვალთ ეკრანზე, რომელიც ჩვეულებრივ ან ნაცრისფერია ან ლურჯი, მაგრამ ისევ ეს დამოკიდებულია თქვენს ბიოს მარკაზე. თქვენ ეძებთ ენერგიის პარამეტრების ვარიანტს. ის ან იქნება ფანჯარაში, როგორც თავად AMIBIOS ეკრანის კადრში (ნასესხები ტექნიკის სახელმძღვანელოდან) ან ზოგიერთში ის შეიძლება იყოს მოწინავე ბიოს მახასიათებლების ფანჯარაში. ყოველ შემთხვევაში თქვენ ეძებთ "აღდგენას AC/ენერგიის დაკარგვის" პარამეტრს. შეიძლება მას სხვა სახელი დაერქვას, მაგრამ ახლოს იქნება. უბრალოდ ეძებე. მას ჩვეულებრივ ექნება სამი ვარიანტი (ბოლო მდგომარეობა, ჩართულია ენერგიის დაკარგვის შემდეგ, გამორთულია დენის დაკარგვის შემდეგ). გსურთ ჩართოთ იგი ენერგიის დაკარგვის შემდეგ. დარწმუნდით, რომ შეინახეთ თქვენი პარამეტრები და დატოვეთ ბიოსი. როდესაც თქვენი ელექტროენერგია გამორთულია ან გამორთავთ აპარატს, ის გადატვირთულია როგორც კი ენერგიას დაუბრუნდება. ჰოჰჰჰჰჰ !!!!!!!!!!!!!!!!

ნაბიჯი 2: სცენარის წერა ნაწილი 1: გეგმის შედგენა

სცენარის წერა ნაწილი 1: გეგმის შედგენა
სცენარის წერა ნაწილი 1: გეგმის შედგენა
სცენარის წერა ნაწილი 1: გეგმის შედგენა
სცენარის წერა ნაწილი 1: გეგმის შედგენა
სცენარის წერა ნაწილი 1: გეგმის შედგენა
სცენარის წერა ნაწილი 1: გეგმის შედგენა
სცენარის წერა ნაწილი 1: გეგმის შედგენა
სცენარის წერა ნაწილი 1: გეგმის შედგენა

პირველი რაც ჩვენ გვინდა გავაკეთოთ არის შევქმნათ გეგმა. კონკრეტულად რა გვინდა სკრიპტის გაკეთება.ა.ა) როდესაც ენერგია წყდება ან BSOD გამოჩნდება ჩვენ გვსურს მისი გადატვირთვა. (გავითვალისწინეთ ნაბიჯი 1 BiosB– ის რედაქტირება.) გადატვირთვისთანავე ჩვენ გვსურს ჩაწეროთ ფაილში მისი გადატვირთვის ზუსტი თარიღი და დრო. გ.) ჩვენ გვსურს შევძლოთ ამ ფაილის შეცვლა. თუ ის გადატვირთულია არაერთხელ, ჩვენ ვერასდროს ვიცნობთ. დ.) ჩვენ გვინდა, რომ მას ჰქონდეს შეცდომის გამოსწორება, ასე რომ ის არ დაიხუროს და ჩვენ დარწმუნებული ვართ, რომ ჩვენ მივიღებთ ყველა ჩვენს გადატვირთვას ცუდი კოდირების გამო. E.) ჩვენ გვინდა შეტყობინების გამოსაქვეყნებლად, რომელშიც ნათქვამია, რომ ის გადატვირთულია.

ნაბიჯი 3: სკრიპტის წერა ნაწილი 2: თქვენი სკრიპტის შექმნა და ცვლადების მინიჭება

სკრიპტის წერა ნაწილი 2: თქვენი სკრიპტის შექმნა და ცვლადების მინიჭება
სკრიპტის წერა ნაწილი 2: თქვენი სკრიპტის შექმნა და ცვლადების მინიჭება

უპირველეს ყოვლისა, შექმენით ტექსტური დოკუმენტი და გადაარქვით სახელი any_name.vbs. მე გამოვიყენე shutdown_catcher.vbs, მაგრამ თქვენ შეგიძლიათ გამოიყენოთ არაფერი. ახლა უბრალოდ დააწკაპუნეთ vbs ფაილზე და დააწკაპუნეთ რედაქტირებაზე. თუ თქვენ იყენებთ ბლოკნოტს ++ ახლა კარგი დრო იქნება მისი გასახსნელად, თუ თქვენ არ აპირებთ რაიმე სახის კოდირებას უნდა გავითვალისწინოთ მისი მიღება. კარგი, პირველი რაც ჩვენ გვინდა გავაკეთოთ არის ცვლადების შექმნა. ცვლადები ძირითადად მხოლოდ ადგილის მფლობელია, ასე რომ ჩვენ არ უნდა დავწეროთ რამოდენიმეჯერ. მაგალითი: ჩვენ გვაქვს წინადადება, სადაც ნათქვამია: "სწრაფი ყავისფერი მელა ზარმაცი ძაღლებისკენ უკან იხტება". მაგრამ ის ჩვენს კოდშია 20 -ჯერ. ჩვენ შეგვიძლია გამოვწეროთ მთელი წინადადება 20 -ჯერ, ან შევქმნათ ცვლადი და მივცეთ წინადადება ამ ცვლადს ახლა ყველაფერი რაც ჩვენ უნდა გავაკეთოთ არის ჩაწეროთ წინადადება ყოველ ჯერზე, როდესაც გვჭირდება წინადადება და მან იცის, რომ აკრიფოს "სწრაფი ყავისფერი მელა ზარმაცი ძაღლებისკენ უკან იხევს" როგორ მოვიქცეთ: თუ ჩვენ გვაქვს ერთი და იგივე ტიპის მრავალი ცვლადი, შეგვიძლია ისინი ერთ ხაზზე და გამოყავით ცვლადები მძიმით. ცვლადის შესაქმნელად ჩვენ უნდა გავაკეთოთ ის, რასაც ცვლადის განზომილება ეწოდება. ამისათვის ჩვენ ვწერთ Dim ცვლადის წინ, შემდეგ ჩვენ ვდებთ პრეფიქსს ცვლადზე, რათა ვიცოდეთ რას წარმოადგენს ცვლადი. მაგალითები არის str სიმებიანი ცვლადი obj for ობიექტის ცვლადი const მუდმივისთვის…. სია გრძელდება და გრძელდება. ეს არის ის, რასაც ჩვენ გამოვიყენებთ ამ სკრიპტში, ასე რომ მე მათ ცოტათი ავუხსნი. სიმებიანი არის ტექსტი, როგორც წინადადება. ობიექტი ჩვეულებრივ არის რაღაც ფიზიკური, როგორც ფაილი ან პროგრამა. და მუდმივი არის ის, რასაც ყოველთვის ექნება ერთი და იგივე მნიშვნელობა სცენარის განმავლობაში. შენიშვნა: ნებისმიერ დროს ხაზს აქვს ერთი "ადრე ეს ხაზი იგნორირებული იქნება დამწერლობის მიერ. ისინი ეძახიან შენიშვნებს და ჩვეულებრივ პროგრამისტსაც აყენებენ მათ შეუძლიათ დაიმახსოვრონ რა გააკეთეს მოგვიანებით, როდესაც გადახედეს კოდს. მე გამოვიყენებ მათ, რომ გააკეთონ კომენტარი კოდის შესახებ, ასე რომ თქვენ შეგიძლიათ ნახოთ რატომ შევატყვე ის გზა, რაც მე გავაკეთე. და ისინი იქნებიან იმ ხაზის ზემოთ, სადაც ისინი კომენტარს აკეთებენ. ფაქტობრივი გამოყენება: 'ეს ხაზი აიძულებს თქვენ განსაზღვროთ ყველა ცვლადი. ამის გარეშე ნებისმიერი განუსაზღვრელი ცვლადი განიხილება როგორც ობიექტი დირექტორიის, ფაილის და ფაილის სახელის სიმებიანი ცვლადების შესაქმნელად DIM strDir, strFile, strFileName ახლა მიანიჭეთ მნიშვნელობები ცვლადებს < / strong> strDir არის ჩვენი დირექტორია, ჩვენ გვსურს საქაღალდე strDir = "C: / Catcher" 'strFile არის სადაც ჩვენ გვინდა ტექსტური დოკუმენტი და რა ჰქვია მას strFile = "\ Shutdown_catcher.txt" 'strfile სახელი არის ასე რომ ჩვენ გვაქვს ფაილის სახელი pop upsstrFileName = "Shutdown_catcher.txt"' შემდეგ ჩვენ უნდა მივანიჭოთ მუდმივი წვდომისათვის ფაილი გვაქვს სამი ვარიანტი 'ჩვენ მხოლოდ ვიყენებთ დამატებას ამ კოდში, მაგრამ სასიამოვნოა ვიცოდეთ ყველა მათგანი. კონსტანტირება ReadReading = 1, forWriting = 2, ForAppending = 8'ბოლოს ჩვენ გვჭირდება ცვლადის დაყენება ფაილურ სისტემაში ობიექტი, ასე რომ ჩვენ შეგვიძლია მას მოგვიანებით დავუძახოთ, როცა დაგვჭირდება დაყენება objFiS yOb = CreateObject ("Scripting. FileSystemObject")

ნაბიჯი 4: ახსნა მათ შორის

ახსნა შორის
ახსნა შორის

ახლა, როდესაც ჩვენ გვაქვს ჩვენი ცვლადები განზომილებიანი, ერთადერთი რაც უნდა გავაკეთოთ არის გავიხსენოთ ეს კონკრეტული ცვლადი ყოველ ჯერზე. ეს არა მხოლოდ ამცირებს აკრეფის რაოდენობას, არამედ შეცდომებს ქმნის შეცდომების გამო. ახლა ტექნიკურად ყველაფერი რაც ჩვენ უნდა გავაკეთოთ არის შემდეგი კოდის აკრეფა და ჩვენ დავასრულეთ "დავაყენოთ ფაილი appendSet objTextFile = objFiSyOb. OpenTextFile (strDir & strFile, ForAppending, True) "ჩაწერეთ ახალი ხაზი fileobjTextFile. WriteLine (" თქვენი კომპიუტერი გამორთულია "& თარიღი &" დროს "და დროს)" დახურეთ fileobjTextFile. Close "გააკეთეთ pop upWscript. Echo (" თქვენი კომპიუტერი გამორთულია "& თარიღი &" დროს "& დროს) 'გახსენით ფაილი IESet objShell = CreateObject (" WScript. Shell ") objShell.run (" Explorer "&" "& strDir &" / shutdown_catcher.txt ") პრობლემა ის არის, რომ მას არ ექნება შეცდომის გასწორება და ნებისმიერი უბრალო შეცდომა, როგორიცაა ფაილი, რომელიც არ არის ან ცვლადი უკვე არის მინიჭებული, გაანადგურებს სკრიპტს.

ნაბიჯი 5: სკრიპტის წერა ნაწილი 3: თუ შემდეგ განცხადებები როგორც შეცდომის გასწორება

სკრიპტის წერა ნაწილი 3: თუ შემდეგ განცხადებები როგორც შეცდომის გასწორება
სკრიპტის წერა ნაწილი 3: თუ შემდეგ განცხადებები როგორც შეცდომის გასწორება

შეცდომის გამოსწორების უმარტივესი გზაა if/then განცხადებების გამოყენება. ძირითადად if if განაცხადი ამბობს თუ რამე მოხდება მაშინ სხვაგვარად გააკეთე ეს. თუ/შემდეგ განცხადებების ჩადგმით თქვენ შეგიძლიათ შექმნათ მოვლენათა სერია, რაც უნდა მოხდეს. თუ a და b და c მოხდება, ამის გაკეთება სხვაგვარად გააკეთეთ. მაგალითი: ჩვენ გვინდა დავრწმუნდეთ, რომ ფაილი, რომელზეც ჩვენ გვინდა დავწეროთ, არის იქ, თუ ჩვენ ვპოულობთ მას არაფრის გაკეთება, თუ ჩვენ არ ვიპოვით, ჩვენ გვინდა მისი შექმნა მინდა შევამოწმო, არის თუ არა საქაღალდე და თუ არა ის და შემდეგ შევამოწმოთ არის თუ არა ფაილი იქ, როდესაც ჩვენ ვიპოვით საქაღალდეს და თუ არ შევქმნით ის პირველი მაგალითია if შემდეგ განცხადება მეორე დაბუდებულია, თუ მაშინ. როგორ ჩვენ ამას ვაკეთებთ: ოთხი ნაწილის არის if შემდეგ განცხადება რა გჭირდებათ გასაკეთებლად სხვა რამის გაკეთება ბოლოს თუ შეგიძლიათ გამოიყენოთ ნებისმიერი არგუმენტი, სანამ ის მართალია, ის მიჰყვება შემდეგ ნაწილს და იგნორირებას უკეთებს სხვა ნაწილს, მაგრამ თუ ყალბია გამოტოვებს შემდეგს და გადადის სხვაზე მაშინ როდესაც ჩვენ დავასრულებთ if განცხადებას ჩვენ ვაყენებთ "ბოლომდე თუ", მაგრამ თუ ჩვენ ჩავსვით ბუდეების დებულებები, ჩვენ უნდა დავამთავროთ ყოველი თუ. ეს დაასრულებს მათ შვილიდან მშობელს, ასე რომ პირველი "ბოლო თუ" მთავრდება მშობლის შიგნით, თუ მეორე მთავრდება დედნის (მშობლის) if განცხადებით. ამომხტარი ჩვენ უბრალოდ ვწერთ Wscript. Echo ("რასაც ჩვენ გვსურს ვთქვათ შეტყობინებაში ") ცვლადების მნიშვნელობის დამატება ჩვენ მას გარეთ ან ორმაგ ბრჭყალებს შორის ვიყენებთ ampersand (&) ნიშნით, როგორც გამყოფი, რათა სკრიპტმა იცოდეს, რომ ეს არის ცვლადი და არა ტექსტი. მოსწონს ეს: Wscript. Echo ("ბლა ბლა ბლა" & strDir & "ბლა ბლა ბლა" & strFilename & "ბლა ბლა ბლა.") ბლა ბლა ბლა. ფაქტობრივი გამოყენება: "თუ საქაღალდე C; / არსებობს თუ objFiSyOb. FolderExists (strDir) მაშინ მიიღეთ საქაღალდე მითითებული objSysFold = objFiSyOb. GetFolder (strDir)" წინააღმდეგ შემთხვევაში სხვა "შექმენით საქაღალდე c; / catcher Set objSysFold = obj შექმენით საქაღალდე (strDir) 'და შეამოწმეთ, არსებობს თუ არა ფაილი და საქაღალდე თუ objFiSyOb. FileExists (strDir & strFile) მაშინ' თუ ის მიიღებს საქაღალდეს c: / catcher Set ob jSysFold = objFiSyOb. GetFolder (strDir) 'elseElse' შექმენით ტექსტური დოკუმენტი shutdown_catcher.txt დააყენეთ objFile = objFiSyOb. CreateTextFile (strDir & strFile) 'შემდეგ გამოჩნდება შეტყობინება, რომ თქვით, რომ თქვენ შექმენით ორივე Wscript. Echo საქაღალდე ("ჩვენ სახელწოდებით "& strDir &" და ფაილი სახელწოდებით "& strFilename &" და მოთავსებულია "& strDir & strFile &" დირექტორიაში. ") 'დაბლოკილია თუ არა ჩვენ უკვე შევამოწმეთ საქაღალდე და აღმოვაჩინეთ, ასე რომ, ახლა ჩვენ ვამოწმებთ fileIf objFiSyOb. FileExists (strDir & strFile) მაშინ თუ იპოვეთ მიიღეთ საქაღალდე Set objSysFold = objFiSyOb. GetFolder (strDir) 'წინააღმდეგ შემთხვევაში სხვაგვარად შექმენით ტექსტი doc Set objFile = objFiSyOb CreateTextFile (strDir & strFile) 'შექმენით ამომხტარი ფანჯარა, რომელშიც ნათქვამია, რომ ჩვენ შევქმენით ტექსტური დოკუმენტი Wscript. Echo ("ჩვენ შევქმენით ფაილი სახელწოდებით" & strFileName & "" & strDir & "ფაილის საქაღალდეში.)) დასრულება თუ

ნაბიჯი 6: ახსნა მათ შორის

ახსნა შორის
ახსნა შორის

თუ ყურადღებით დააკვირდებით წინა ნაბიჯის კოდს, ნახავთ როგორც დაბინდულ, ისე დაუჯდომელ, თუ შემდეგ განცხადებას. პირველი არის ჩადგმული განცხადება. ის ამოწმებს საქაღალდეს და ფაილს და თუ ვერ პოულობს, ქმნის ორივეს. მეორე ეძებს მხოლოდ ფაილს და თუ ის ვერ პოულობს ის ქმნის მხოლოდ ფაილს. შეიძლება ითქვას, რატომ ორივე. რა მოხდება, თუ ფაილი წაიშლება, მაგრამ საქაღალდე არ არის. პირველი if განცხადება გამოტოვებდა ფაილის შექმნისას, რადგან იპოვა საქაღალდე და არასოდეს ამოქმედებდა განცხადების სხვა ნაწილს. ასე რომ, როდესაც მიდიხართ ფაილის დასაწერად, ის შეცდომა გამოჩნდება, რადგან ფაილი არ იქნება დაკარგული. ამრიგად, მეორის არსებობით ის აგვარებს ამ პრობლემას. ტექნიკურად თქვენ შეგიძლიათ ამოიღოთ ბუდეში ნათქვამი, რადგან ის თითქმის იგივეა, რაც მეორე მაშინ, მაგრამ შემდეგ გექნებათ მხოლოდ ერთი ამომხტარი და ის არ იქნება ისეთი პერსონალური პლუს, რომ მომცა შანსი მეჩვენებინა, რომ ბუდე იყო -განლაგებულია განცხადებები.

ნაბიჯი 7: მეტი შეცდომის გასწორება

მეტი შეცდომის გასწორება
მეტი შეცდომის გასწორება

ახლა, როდესაც ჩვენ დავასრულეთ შეცდომის კორექციის უმრავლესობა, ჩვენ გვინდა დავწეროთ ფაილში და გამოვაჩინოთ ამომხტარი ფანჯრები. პრობლემა ის არის, რომ ჩვენ ვიღებთ ნებართვის შეცდომებს, თუ არ გამოვაქვეყნებთ ცვლადში შენახული წინა ობიექტის მითითებას. ასე რომ, ჩვენ გვინდა ჩავდოთ კოდის მცირე ნაწყვეტი, რომელშიც ნათქვამია, რომ ცვლადები არაფერზე დააყენე. ასე გამოიყურება: მითითებული objFile = nothingset objSysFold = არაფერი ასე რომ, მათთვის, ვინც სახლში მიჰყვება თქვენს კოდს ამ წერტილში უნდა იყოს (მე მივიღე კომენტარი გარეთ): ვარიანტი ExplicitDim objFiSyOb, objSysFold, objShell, objFile, objTextFileDim strDir, strFile, strFileNamestrDir = "C: / Catcher" strFile = "\ Shutdown_catcher.txt" strFileNc = 2, Shutdown = 2, Shutdown ForAppend = 8Set objFiSyOb = CreateObject ("Scripting. FileSystemObject") თუ objFiSyOb. FolderExists (strDir) შემდეგ დააყენეთ objSysFold = objFiSyOb. GetFolder (strDir) Else Set objSysFold = objFiSyDOFFE = objFi დააყენეთ objSysFold = objFiSyOb. GetFolder (strDir) სხვას დააყენეთ objFile = objFiSyOb. CreateTextFile (strDir & strFile) Wscript. Echo ("ჩვენ შევქმენით საქაღალდე სახელწოდებით" & strDir & "და ფაილი სახელწოდებით" & strFilename & "და მოთავსებულია მასში "& strDir & strFile &" დირექტორია. ") დასასრული I fEnd IfIf objFiSyOb. FileExists (strDir & strFile) შემდეგ Set objSysFold = objFiSyOb. GetFolder (strDir) სხვა Set objFile = objFiSyOb. CreateTextFile (strDir & strFile) Wscript. Echo (სახელი) "& strDir &" ფაილის საქაღალდე. ") Ifset- ის დასრულება objFile = nothingset objSysFold = არაფერი

ნაბიჯი 8: სკრიპტის წერა ნაწილი 4: ატრიბუტების დაყენება

სკრიპტის წერა ნაწილი 4: ატრიბუტების დაყენება
სკრიპტის წერა ნაწილი 4: ატრიბუტების დაყენება

ახლა ჩვენ უნდა დავაყენოთ ატრიბუტები ფაილზე, რათა შევძლოთ მისი შეცვლა. ადრე ჩვენ დავაყენეთ სამი მუდმივი ცვლადი: forReading = 1forWriting = 2 forAppending = 8 თუ თქვენ დააყენებთ მას forReading თქვენ შეძლებთ წაიკითხოთ, მაგრამ არ დაწეროთ. თუ დააყენებთ forWriting თქვენ გადააწერთ არსებულ ფაილს ყოველ ჯერზე პროგრამის გაშვებისას რა თუ თქვენ დააყენებთ მას forAppending თქვენ დაამატებთ ახალ სტრიქონს ყოველ ჯერზე, როდესაც სკრიპტი ასრულებს დოკუმენტს. ვინაიდან ჩვენ გვსურს ჟურნალი ყოველ ჯერზე, როდესაც ის გადატვირთულია, ჩვენ გვინდა, რომ ის დაერთოს და არ დაიწეროს, ამიტომ ჩვენ ვიყენებთ forAppending. როგორ ვაკეთებთ ამას: თქვენ უნდა დაასახელოთ ობიექტი, რომლისთვისაც გსურთ ატრიბუტების დაყენება. ვინაიდან ჩვენ უკვე გავაკეთეთ სამუშაოს უმეტესი ნაწილი წინა ნაბიჯებში, ჩვენ უბრალოდ უნდა გავიხსენოთ ცვლადები ამ ეტაპზე. შემდეგ უბრალოდ დააყენეთ ის true. Actual Usage: 'object to set = filesystemobject.action (დირექტორია+ფაილის სახელი, ატრიბუტი, ჭეშმარიტი ან მცდარი) დააყენეთ objTextFile = objFiSyOb. OpenTextFile (strDir & strFile, ForAppending, True)

ნაბიჯი 9: სცენარის წერა ნაწილი 5: წერა ფაილზე

სკრიპტის წერა ნაწილი 5: წერა ფაილზე
სკრიპტის წერა ნაწილი 5: წერა ფაილზე

ფაილზე წერა ჰგავს ამომხტარი წერილის წერას. თქვენ უბრალოდ განათავსეთ: objTextFile. WriteLine ("რისი თქმაც გსურთ" და ცვლადი ხაზის დასაწერად) ერთადერთი განსხვავება არის პირველი ნაწილი. ამომხტარი ფანჯარაში თქვენ ათავსებთ: Wscript.echoin a write line you put: objTextFile. ჩაწერეთ და ჩაწერის ხაზში თქვენ უნდა დახუროთ წერის ხაზი, რათა მან იცოდეს წერის შეწყვეტა და ამისათვის გამოიყენეთ: objTextFile. CloseActual Usage: objTextFile. WriteLine ("თქვენი კომპიუტერი გამორთულია" & თარიღი & "დროს" და დროს). დახურეთ ახლავე დაამატეთ ამომხტარი ფანჯარა, რომ თქვათ, რომ თქვენ დაწერეთ ფაილში, რათა ადამიანმა იცოდეს რომ ეს მოხდა და მათ უნდა დახურონ ის ფაილის გასახსნელად და viewWscript. Echo ("თქვენი კომპიუტერი გამორთულია" & თარიღი და "at" & დრო)

ნაბიჯი 10: სცენარის წერა ნაწილი 5: გახსენით ფაილი სანახავად

სკრიპტის წერა ნაწილი 5: ფაილის გახსნა სანახავად
სკრიპტის წერა ნაწილი 5: ფაილის გახსნა სანახავად

სკრიპტი ამ მომენტში შეჩერდება მანამ, სანამ ვინმე არ დააწკაპუნებს pop -up- ზე. ერთხელ თქვენ მიიღებთ წარსულში pop -up თქვენ შეგიძლიათ განათავსოთ ხაზი რომ ხსნის ფაილი. შეცდომის გამოსწორების გამოყენება ხელს უწყობს პროგრამის ლამაზად მუშაობას. როდესაც თქვენ ქმნით შეცდომას vbscript- ში, ის ამატებს მნიშვნელობას "err.number" ცვლადს, რომელიც არის წინასწარ განსაზღვრული ცვლადი vbscript- ში. თქვენ არ გჭირდებათ მისი განსაზღვრა და შეგიძლიათ გამოიყენოთ იგი, როგორც ნებისმიერი სხვა ცვლადი, სანამ არ არღვევთ მის წესებს. Err.number ცვლადზე მინიჭებული მნიშვნელობა არის შეცდომის კოდი. ახლა თქვენ შეგიძლიათ შეამოწმოთ vbscript მონაცემთა ბაზაში ცნობილი ყველა შეცდომის კოდი და დარწმუნდეთ, რომ ის არ მოხდა. ან უფრო ადვილია, უბრალოდ შეამოწმოთ, რომ დარწმუნდეთ, რომ რიცხვითი ცვლადი ცარიელია. თუ ის ცარიელია, შეცდომები არ მომხდარა. ამისათვის ჩვენ უბრალოდ ვამოწმებთ ცვლადს უტოლდება თუ არა vbEmpty. ასე რომ, ჩვენს სკრიპტში ჩვენ გვსურს გამოვიყენოთ სხვა if მაშინ განცხადება. და შეამოწმეთ, მოხდა თუ არა შეცდომა და არ გახსნა ფაილი სანახავად, მაგრამ თუ ეს მოხდა, მაშინ გამოჩნდება შეტყობინება შეცდომის ნომრით მასში, რათა ჩვენ შევძლოთ გამართვა. შემდეგ, როდესაც ჩვენ ყველანი დავასრულებთ ჩვენს სკრიპტს ჩაწერეთ Wscript. დატოვეთ. ეს ეუბნება სკრიპტს რომ თავი დაანებოს. ეს ხელს უწყობს მეხსიერების გაჟონვისა და არასასურველი პროცესების შენარჩუნებას. როგორ გამოიყენება: თუ err. რიცხვი vb errorIf err.number = vbEmpty მაშინ "თუ არავინ შექმნის გარსს მითითებული objShell = CreateObject (" WScript. Shell ")" შემდეგ გახსენით ფაილი ამ ჭურვიდან Explorer- ის გამოყენებით. ის ფაქტიურად გაიხსნება IE- ში, თუმცა objShell.run ("Explorer" & "" & strDir & "\ shutdown_catcher.txt") 'წინააღმდეგ შემთხვევაში გამოჩნდება შეტყობინება შეცდომის ნომრით სხვა WScript.echo "VBScript Error:" & err.numberEnd თუ 'end scriptWscript.quit

ნაბიჯი 11: სკრიპტის გაშვება გაშვებისას

სკრიპტის გაშვება გაშვებისას
სკრიპტის გაშვება გაშვებისას

საწყის მენიუში არის ფაილის საქაღალდე სახელწოდებით გაშვება. ყველაფერი, რაც მოთავსებულია ამ საქაღალდეში, დაიწყება კომპიუტერის ჩართვისთანავე. სკრიპტის ფაილის გაშვების საქაღალდეში განთავსებით ის შესრულდება ყოველ ჯერზე კომპიუტერის გადატვირთვა განზრახ თუ არა. ვინაიდან მე ამას მხოლოდ სადიაგნოსტიკო ინსტრუმენტად ვიყენებ, ის არ უნდა გახდეს სერვისი დასაწყებად და არ მჭირდება მისი ჩანაწერი რეესტრში მის დასაწყებად, ასე რომ ეს კარგად იქნება. კომპიუტერის გამოსწორების შემდეგ შემიძლია ფაილის წაშლა გაშვების საქაღალდიდან და სხვა გასუფთავება არ არის საჭირო.

ნაბიჯი 12: პროგრამის გაშვება

პროგრამის გაშვება
პროგრამის გაშვება
პროგრამის გაშვება
პროგრამის გაშვება
პროგრამის გაშვება
პროგრამის გაშვება

როდესაც თქვენ ასრულებთ vbscript ფაილს, ის ახლა ა.) შეამოწმეთ, არის თუ არა საქაღალდე C: / Catcher და თუ არ შექმნით მას. ბ:) შეამოწმეთ არსებობს თუ არა ფაილი Shutdown_catcher.txt და თუ არა მისი შექმნა. C:) თუ მან შექმნა საქაღალდე ან ფაილი ან ორივე, გამოჩნდება შეტყობინება, რომელშიც ნათქვამია, რომ მან შექმნა ისინი (შენიშვნა: ეს უნდა გაკეთდეს მხოლოდ პირველი გაშვების შემდეგ, ის უკვე იქ უნდა იყოს, თუ არ წაიშლება, ასე რომ თქვენ მხოლოდ ერთხელ უნდა ნახოთ ეს შეტყობინება რაშეიძლება კარგი იდეა იყოს ამ სკრიპტის გაშვება ერთხელ კონტროლირებადი გადატვირთვისას, ასე რომ თქვენ შეგიძლიათ ამ გვერდების გვერდის ავლით ან ფაილში არაფერი დაწეროთ, რადგან ის გვერდს არ აუვლის შექმნილ ფაილებს.) D:) ჩაწერეთ ხაზი ტექსტური დოკუმენტი Shutdown_Catcher.txt ნათქვამია, რომ კომპიუტერის გამორთვა ასეთ დროს თქვენ დაინახავთ კოდს დაწერილს. ახლა მე მხოლოდ უნდა ვიჯდე და დაველოდო. ყოველ ჯერზე, როდესაც კომპიუტერი გადატვირთულია, მე მექნება მისი ჩანაწერი. შემდეგ შემიძლია გადახედო ჩანაწერს და ვნახო, არის თუ არა რაიმე თანმიმდევრულობა მასში. მაგალითი შეიძლება იყოს ის, რომ ის გადატვირთულია ყოველ ნახევარ საათში ან გადატვირთულია ნებისმიერ დროს, როდესაც საათში არის ნამატი ან 45. ეს არავითარ შემთხვევაში არ არის ერთადერთი გზა, როდესაც მე ვამოწმებ კომპიუტერს, ასე რომ თქვენ იცით. მე ასევე მაქვს ბენჩმარკინგის პროგრამა, რომელიც მუშაობს ტემპერატურის შესამოწმებლად, ასე რომ მე ვიცი რამდენად ცხელია, როდესაც ის ითიშება, ძაბვა, ასე რომ მე ვიცი, ელექტროენერგიის მიწოდება წყდება თუ არა და კიდევ რამდენიმე სასარგებლო რამ. კარგი, იმედი მაქვს, რომ ეს იყო სასარგებლო. მე ვიცი, რომ მე მსიამოვნებს, ასე რომ, შესაძლოა სხვებმაც ისიამოვნონ. თუ თქვენ გაქვთ რაიმე შეკითხვები მოგერიდებათ. შეიძლება მე მათთან სასწრაფოდ არ მივიდე, მაგრამ ცოტა ხნით და გიპასუხებ. ეს დამოკიდებულია იმაზე, თუ როგორ მიდის ჩემი დღე/კვირა.

ნაბიჯი 13: კოდი

Კოდი
Კოდი

ეს არის კოდი, როგორც ყველა მინიშნებისა და შენიშვნის გარეშე დაწერილი_ ვარიანტი ExplicitDim objFiSyOb, objSysFold, objShell, objFile, objTextFileDim strDir, strFile, strFileNamestrDir = "C: / Catcher" strFile = "\ Shutdown_catcher." = Shutdown_catcher. " Const forReading = 1, forWriting = 2, ForAppend = 8Set objFiSyOb = CreateObject ("Scripting. FileSystemObject") თუ objFiSyOb. FolderExists (strDir) შემდეგ დააყენეთ objSysFold = objFiSyOb. GetFolder_dold_bright_oldFolder_style_older_dold (strDjirFoldFir) objFiSyOb. FileExists (strDir & strFile) შემდეგ Set objSysFold = objFiSyOb. GetFolder (strDir) სხვა მითითებული objFile = objFiSyOb. CreateTextFile (strDir & strFile) Wscript. Echo ("და ჩვენ შევქმენით საქაღალდე სახელწოდებით" "& strFilename &" და მოათავსეთ "& strDir & strFile &" დირექტორიაში. ") დაასრულა IfEnd IfIf objFiSyOb. FileExists (strDir & strFile) შემდეგ დააყენეთ objSysFold = objFiSyOb. GetFolder (strDir) სხვა დაყენება objFile = objFiSy strDir & strFile) Wscript. Echo ("ჩვენ გვაქვს შექმნა ფაილი სახელწოდებით "& strFileName" "" & strDir & "ფაილების საქაღალდეში.") დაასრულეთ Ifset objFile = nothingset objSysFold = asgjë არ დააყენეთ objTextFile = objFiSyOb. OpenTextFile (strDir & strFile, ForAppending, True) objTextFile. " გამორთეთ "& თარიღი &" დროს "და დროს) objTextFile. CloseWscript. Echo (" თქვენი კომპიუტერი გამორთულია "& თარიღი &" დროს "და დროს) თუ err.number = vbEmpty მაშინ დააყენეთ objShell = CreateObject (" WScript Shell ") objShell.run (" Explorer "&" "& strDir &" / shutdown_catcher.txt ") სხვა WScript.echo" VBScript Error: "& err.numberEnd IfWScript.uit

გირჩევთ: