Driver File Systems Filter Manager ไม่ทำงาน ไดรเวอร์ตัวกรองระบบไฟล์ วิธีติดตั้งโปรแกรมป้องกันไวรัสฟรีของ Avast

โกลอฟนา / ข้อมูล Corisna

ไดรเวอร์ตัวกรองซึ่งยืมมาในลำดับชั้น ระบบไฟล์, เรียกว่า ไดรเวอร์ตัวกรองระบบไฟล์(ไดรเวอร์ตัวกรองระบบไฟล์) (เกี่ยวกับตัวกรองไดรเวอร์ div. 9.) เป็นไปได้ที่จะดาวน์โหลดทุกอย่างลงในระบบไฟล์และหากจำเป็น ให้แก้ไขหรือปิดใช้งาน อนุญาตให้สร้างโปรแกรมดังกล่าว เช่น บริการการจำลองแบบสำหรับไฟล์ระยะไกล การเข้ารหัสไฟล์ สำรองใบอนุญาตนั้น B เป็นเครื่องสแกนไวรัสเชิงพาณิชย์ชนิดหนึ่งซึ่งแปลงไฟล์เป็น "ล็อต" เข้าสู่ไดรเวอร์ระบบไฟล์ซึ่งเปลี่ยนแพ็กเก็ต IRP ด้วยคำสั่ง IRP_MJ_CREATE ซึ่งสามารถตรวจสอบไฟล์ได้เป็นเวลาหนึ่งชั่วโมงโดยการตรวจสอบ โปรแกรม. ขั้นแรก ส่ง IRP ดังกล่าวไปยังไดรเวอร์ระบบไฟล์ที่มีการระบุคำสั่ง เครื่องสแกนไวรัสจะตรวจสอบไฟล์เพื่อหาไวรัส หากไฟล์สะอาด เครื่องสแกนป้องกันไวรัสจะส่ง IRP ด้วยวิธีมีดหมอ หรือหากไฟล์ติดไวรัส เครื่องสแกนจะไปยังกระบวนการบริการเพื่อลบหรือสแกนไฟล์ หากคุณไม่สามารถเปลี่ยนไฟล์ได้ ให้ใช้ไดรเวอร์ตัวกรอง IRP (ขออภัย "การเข้าถึงถูกบล็อก") เพื่อไม่ให้ไวรัสทำงาน

เราจะอธิบายหุ่นยนต์ที่มีไดรเวอร์เฉพาะสองตัวสำหรับตัวกรองระบบไฟล์: Filemon และ System Restore Filemon เป็นยูทิลิตี้สำหรับตรวจสอบกิจกรรมของระบบไฟล์ (จากไซต์ www.systntemals.com), vikoristovuetsya ในการทดลองมากมายกับหนังสือเล่มนี้ มันเป็นส่วนท้ายของไดรเวอร์ตัวกรองแบบพาสซีฟซึ่งไม่ได้แก้ไขโฟลว์ IRP ระหว่างส่วนเสริมและไดรเวอร์ระบบไฟล์ System Restore (นวัตกรรมของระบบ) - ฟังก์ชันที่นำมาใช้ใน Windows XP - ไดรเวอร์ตัวกรองระบบไฟล์ vicorist เพื่อคอยระวังการเปลี่ยนแปลงในไฟล์ระบบที่สำคัญและสร้างสำเนาสำรองเพื่อให้สามารถหมุนไฟล์ในสถานีได้เหมือนกับอยู่ใน พวกเขาในช่วงเวลาแห่งการสร้างจุดแห่งแรงบันดาลใจ


บันทึก Windows XP Service Pack 2 และ Windows Server 2003 มี Filesystem Filter Manager (\Windows\System32\Drivers\Fltmgr.sys) ซึ่งเป็นส่วนหนึ่งของโมเดลพอร์ต-มินิพอร์ตสำหรับไดรเวอร์ตัวกรองระบบไฟล์ คอมโพเนนต์นี้จะพร้อมใช้งานสำหรับ Windows 2000 Filesystem Filter Manager จะทำให้การพัฒนาไดรเวอร์ตัวกรองง่ายขึ้นอย่างมาก จัดเตรียมอินเทอร์เฟซสำหรับไดรเวอร์ตัวกรองมินิพอร์ตกับระบบ Windows I/O และยังให้บริการสำหรับการโหลดชื่อไฟล์ การเชื่อมต่อกับไดรฟ์ข้อมูล และฟิลเตอร์อื่นๆ บริษัทค้าปลีก ซึ่งรวมถึง Microsoft จะเขียนตัวกรองระบบไฟล์ใหม่โดยยึดตามโครงสร้างพื้นฐาน ตามที่คาดไว้โดย Filesystem Filter Manager และโอนไปยังตัวกรองดังกล่าวโดยใช้ตัวกรอง


การอภัยโทษของ filtermanager.dll และการอภัยโทษ DLL ของระบบอื่นๆ อาจเกิดจากปัญหาในรีจิสทรีของ Windows โปรแกรม Dekіlkaสามารถเปลี่ยนไฟล์ filtermanager.dll ได้ แต่ถ้าโปรแกรมถูกลบหรือเปลี่ยนแปลง บางครั้งรายการ "orphaned" (การให้อภัย) ในรีจิสทรี DLL จะถูกลบ

โดยหลักการแล้ว หมายความว่าในชั่วโมงนั้น เนื่องจากเส้นทางจริงไปยังไฟล์เป็นช่วงเวลาของการเปลี่ยนแปลง จึงบันทึกในรีจิสทรีของ Windows อย่างไม่ถูกต้อง หาก Windows พยายามค้นหาไฟล์สำหรับข้อความที่ไม่ถูกต้อง (สำหรับการแจกจ่ายไฟล์ในคอมพิวเตอร์ของคุณ) คุณสามารถตำหนิ pardon filtermanager.dll นอกจากนี้ การติดมัลแวร์อาจทำให้รายการรีจิสทรีที่เกี่ยวข้องกับแอปพลิเคชันบุคคลที่สามเสียหาย ดังนั้น หากรายการรีจิสทรี DLL เสียหาย จำเป็นต้องแก้ไขเพื่อขจัดปัญหา

ไม่แนะนำให้แก้ไขรีจิสทรีของ Windows ด้วยตนเองด้วยวิธีลบคีย์ filtermanager.dll ซึ่งสามารถให้อภัยได้ เนื่องจากคุณไม่ใช่ผู้เชี่ยวชาญด้านการบำรุงรักษาพีซี การอภัยโทษ ที่อนุญาตภายใต้ชั่วโมงของการแก้ไขรีจิสทรี อาจทำให้พีซีของคุณทำงานไม่ถูกต้อง และทำให้ระบบปฏิบัติการของคุณทำงานผิดพลาด เอาจริงๆ นะ navit one coma ใส่ผิดที่ บางทีก็ท่วมคอม!

ในการเชื่อมต่อกับความเสี่ยงที่คล้ายกัน เราขอแนะนำให้คุณใช้เครื่องมือทำความสะอาดรีจิสทรี เช่น WinThruster (ส่วนขยาย Microsoft Gold Certified Partner) เพื่อสแกนและแก้ไขปัญหาที่อาจเกี่ยวข้องกับ filtermanager.dll หากคุณล้างรีจิสทรี คุณสามารถทำให้กระบวนการค้นหารายการรีจิสทรีบางรายการเป็นแบบอัตโนมัติ ส่งไปยังไฟล์รายวัน (เช่น การเรียกการให้อภัย filtermanager.dll) และส่งรายการที่ไม่ทำงานไปยังรีจิสทรีกลาง ก่อนการสแกนผิวหนัง สำเนาสำรองจะถูกสร้างขึ้นโดยอัตโนมัติ ซึ่งช่วยให้คุณช่วยตัวเองได้ด้วยคลิกเดียวและปกป้องคุณจากข้อผิดพลาดของคอมพิวเตอร์ที่อาจเกิดขึ้น Naypriёmnіshe scho ให้อภัยรีจิสทรีสามารถเพิ่มความเร็วและประสิทธิผลของระบบได้อย่างรวดเร็ว


ก้าวหน้า:หากคุณไม่รู้จักพีซีที่เสียหาย เราไม่แนะนำให้แก้ไขรีจิสทรีของ Windows ด้วยตนเอง การเลือก Registry Editor ที่ไม่ถูกต้องอาจทำให้เกิดปัญหาร้ายแรงได้ ติดตั้ง Windows ใหม่. เราไม่รับประกันว่าความไม่ถูกต้องซึ่งเป็นผลมาจากการเลือกที่ไม่ถูกต้องโดย Registry Editor อาจได้รับการแก้ไข คุณเป็นบรรณาธิการของรีจิสทรีเพราะกลัวและเสี่ยง

ก่อนทำสิ่งนี้ อัปเดตรีจิสทรีของ Windows ด้วยตนเอง จำเป็นต้องสร้างสำเนาสำรอง ส่งออกส่วนหนึ่งของรีจิสทรี ลิงก์ไปยัง filtermanager.dll (เช่น แอปพลิเคชันบุคคลที่สาม):

  1. คลิกที่ปุ่ม เกือบ.
  2. เข้า " สั่งการ" ใน แถวของเรื่องตลก ... อย่าแสตมป์ เข้าสู่!
  3. ปุ่มตัดแต่ง CTRL-Shiftบนแป้นพิมพ์ กด เข้าสู่.
  4. หน้าต่างโต้ตอบจะปรากฏขึ้นเพื่อเข้าถึง
  5. กด ดังนั้น.
  6. กล่องดำจะปรากฏขึ้นพร้อมกับเคอร์เซอร์กะพริบ
  7. เข้า " regedit“แล้วกด เข้าสู่.
  8. ให้ Registry Editor เลือกคีย์ที่ตรงกับ filtermanager.dll (เช่น แอปพลิเคชันบุคคลที่สาม) ซึ่งคุณต้องสร้างสำเนาสำรอง
  9. ในเมนู ไฟล์ห่อ ส่งออก.
  10. เพิ่มในรายการ บันทึกจากเลือกโฟลเดอร์ที่คุณต้องการบันทึกสำเนาสำรองของรหัสแอปพลิเคชันบุคคลที่สาม
  11. ในสนาม ชื่อไฟล์ป้อนชื่อไฟล์สำรอง เช่น "Third-Party Application Backup"
  12. เปลี่ยนใจอะไรอยู่บนพื้น ช่วงการส่งออกค่าที่เลือก เข็มวิแบรน.
  13. กด บันทึก.
  14. ไฟล์จะถูกบันทึก ด้วย extensions.reg.
  15. ขณะนี้คุณมีสำเนาสำรองของรายการรีจิสทรีที่เกี่ยวข้องกับ filtermanager.dll

บทความนี้จะไม่มีการอธิบายข้อขัดข้องด้วยการแก้ไขรีจิสทรีด้วยตนเอง ชาร์ดด้วยความช่วยเหลือของการย้ายอาจทำให้ระบบของคุณขัดข้องได้ หากคุณต้องการดูข้อมูลเพิ่มเติมเกี่ยวกับการแก้ไขรีจิสทรีด้วยตนเอง โปรดดูข้อความด้านล่าง

อย่างไรก็ตาม, ไม่ได้ตรวจสอบผลิตภัณฑ์ที่คุณสัญญาไว้, มีการติดตั้งโปรแกรมป้องกันไวรัสด้วยตนเองบนคอมพิวเตอร์ที่บ้านของคุณโดยอิสระ, แต่สะดุดกับความกำกวมบางอย่าง. หลังจากติดตั้งตัวติดตั้งบนเว็บไซต์ทางการ www.avast.com/ru แล้วจึงติดตั้งบนคอมพิวเตอร์ที่บ้านของคุณ โปรแกรมคิวและยังต้องลงทะเบียน ฉันเข้าไปแล้วตอนนี้ฉันไม่สามารถเข้ากับขนตาได้ อย่างน้อยที่สุดที่จะเรียกใช้ฟังก์ชันแซนด์บ็อกซ์หรือแซนด์บ็อกซ์ก็มากเกินไปที่จะพูดเกี่ยวกับมันในครั้งเดียว มันเป็นสภาพแวดล้อมเสมือนของตัวเองซึ่งคุณสามารถเรียกใช้โปรแกรมที่น่าสงสัยโดยไม่ต้องกลัวว่าจะติดไวรัสทั้งระบบ ดังนั้นแกนที่ nalashtuvannyah ชนะєและแกนของpracyuє chi ก็ไม่เข้าใจ ฉันยังไม่ทราบฟังก์ชันดังกล่าว เช่น การสแกนเมื่อ zapped ดูเหมือนว่าจะเป็นวิธีที่ดีในการดูโฆษณาแบนเนอร์และเนื่องจากไม่ได้เปิดใช้งาน Avast จะตรวจสอบไฟล์ซิปอีกครั้งจนกว่า Windows จะถูกใช้งาน ฉันจะไปขอความช่วยเหลือ แม็กซิม

วิธีการติดตั้งโปรแกรมป้องกันไวรัส Avast ฟรี

แอนติไวรัสใดที่ดีที่สุด อาหารที่ปรุงโดยเดอมีสำหรับหลักการดังกล่าว พวกเขาจะเป็นผู้ปกป้องผลิตภัณฑ์แอนตี้ไวรัสแทบทั้งหมด เช่น ผลิตภัณฑ์แบบชำระเงินและbezkoshtovnі ว่าทำไมถึงเหม็นกันเอง รวมไปถึงเรื่องอื่นๆ อีกมาก เช่น เป็นวิธีที่ดีที่สุดในการจูงใจให้ตัวเอง คอมพิวเตอร์ที่บ้าน Vіdvіrusіvฉันyakі, krіm Antivirusu, สำหรับโปรแกรม tsogo vikoristovuvat ดูอาหารกับคุณได้ทันที วิธีดาวน์โหลด แทรก bezkostovny โปรแกรมป้องกันไวรัส Avast. เราจะหารือกับคุณเกี่ยวกับโปรแกรมหลัก บริการ การสแกนไวรัส

หมายเหตุ: เพื่อนๆ หากคุณต้องการลบโปรแกรมป้องกันไวรัสของ Avast ให้รีบทำ ดูดีรอบ ๆแอนตี้ไวรัสแบบเสียเงินและฟรีตรวจสอบสถิติของเรา

โดยพื้นฐานแล้ว การป้องกันโปรแกรมต่อต้านไวรัส Avast ของเรา กระตุ้นให้เกิดการป้องกันที่อยู่อาศัยอย่างเข้มงวด Vіdbuvaєtsyaเพื่อขอความช่วยเหลือจากหน้าจอของตัวเอง นั่นคือโมดูลของโปรแกรมที่แสดงถาวรใน หน่วยความจำในการทำงานเธอเห็นทุกอย่างที่เห็นบนคอมพิวเตอร์
ตัวอย่างเช่น หน้าจอระบบไฟล์เป็นเครื่องมือหลักในการป้องกันและป้องกันการทำงานทั้งหมดที่ทำกับไฟล์ของคุณ หน้าจอ Merezhevy ควบคุมกิจกรรม Merezhevu และเสียงของไวรัส ขณะที่พวกเขากำลังพยายามส่งผ่านอินเทอร์เน็ต หน้าจอไปรษณีย์ - ติดตาม จดหมายอิเล็กทรอนิกส์และตรวจสอบแผ่นงานทั้งหมดที่มาถึงคอมพิวเตอร์ของคุณอย่างมาก แม้แต่โปรแกรม Avast ก็สามารถทำได้ผ่านการวิเคราะห์แบบฮิวริสติก ซึ่งมีผลกับรูทคิท

แกนให้คุณและโปรแกรมป้องกันไวรัส bezkoshtovny!

ใส่ด้านล่างก่อน อวาสต์! แอนติไวรัสฟรีเป็นความผิดของคุณที่รู้ว่าคุณสามารถชนะโยคะได้ที่บ้านเท่านั้น คุณสามารถรับโปรแกรมป้องกันไวรัสบนเว็บไซต์ www.avast.com. หากต้องการตำหนิปัญหาในการดาวน์โหลดโปรแกรมป้องกันไวรัส Avast ให้ดาวน์โหลดที่ด้านข้างของผู้จัดจำหน่ายอย่างเป็นทางการ "Avsoft" ตามที่อยู่:

www.avsoft.ru/avast/Free_Avast_home_edition_download.htm
เราสนใจโปรแกรมป้องกันไวรัสของเราบนเว็บไซต์ทางการ
www.avast.com/ru-ru/free-antivirus-download ห่อ โปรแกรมป้องกันไวรัสฟรีตากดดาวน์โหลด

สำหรับผู้ใช้ Welcome Avast Free Antivirus ให้คลิกที่ปุ่ม Download Now

Zavantazhili เรียกใช้โปรแกรมติดตั้งโปรแกรม สำหรับเวอร์ชันปัจจุบัน ให้เลือกระหว่างการติดตั้งเริ่มต้นและการติดตั้งเป็นโปรแกรมป้องกันไวรัสตัวอื่น หากคุณมีโปรแกรมป้องกันไวรัสตัวแรกติดตั้ง Kaspersky อาจเกิดข้อขัดแย้งได้

คุณสามารถเลือกการติดตั้งด่วน

อะไรที่คุณต้องการ เบราว์เซอร์ Google Chrome ทำเครื่องหมายที่ช่อง การติดตั้งvіdbuvaєtsyadnієї-two hvilin
การติดตั้งเสร็จสมบูรณ์. ทิสนีโม่พร้อมแล้ว

หลายคนที่เคยใช้โปรแกรมจาก smut รู้สึกประหลาดใจที่จำเป็นต้องลงทะเบียนโปรแกรมป้องกันไวรัส AVAST แต่เป็นความจริง การลงทะเบียนง่ายเกินไป มันยากที่จะลงทะเบียน

Obiraemo พื้นฐาน zahist AVAST! โปรแกรมป้องกันไวรัสฟรี

ลองจำรูปแบบง่ายๆ นี่คือการลงทะเบียนใบอนุญาตฟรี

โปรแกรมป้องกันไวรัสเวอร์ชันของเราได้รับการลงทะเบียนแล้ว แผ่นงานดังกล่าวจะถูกส่งถึงคุณทางไปรษณีย์

ทันที เราได้รับคำสั่งให้เปลี่ยนเป็นรุ่น Internet Security เป็นเวลา 20 วันหลังจากจบเทอมนี้ สำหรับ bazhanya คุณสามารถเปลี่ยนเป็น ฟรีหรือรับเวอร์ชันของ Internet Security หากคุณต้องการความช่วยเหลือ ให้รีบไปที่เวอร์ชัน AVAST! โปรแกรมป้องกันไวรัสฟรี คุณสามารถเปลี่ยนไปใช้เวอร์ชันที่ต้องชำระเงินได้ กดที่ด้านขวา รหัสบนบนไม้กางเขนและปิดหน้าต่าง

หลังจาก 365 วัน คุณจะต้องลงทะเบียนใหม่ เท่านี้ก็เรียบร้อย วิธีการ bachite, zavantazhit และติดตั้งโปรแกรมป้องกันไวรัส Avast ที่ไม่มีค่าใช้จ่าย โดยหลักการแล้ว การลงทะเบียนไม่ใช่เรื่องง่าย

คุณสามารถพูดทุกอย่างได้อย่างชัดเจนและชาญฉลาดยิ่งขึ้น ผู้จัดการทั้งหมดสามารถคิดหาวิธีทำใยแมงมุมได้ บัดนี้ เพื่อนๆ เคารพ สำหรับการเลื่อนตำแหน่ง โปรแกรมได้รับการปรับปรุงให้ดียิ่งขึ้นไปอีก แต่มัคนายกได้ปรับปรุงความเคารพของคุณ Avast ได้รับการอัพเดตโดยอัตโนมัติ เสียงหลังจากเปิดคอมพิวเตอร์และระบบปฏิบัติการเริ่มทำงาน



ด้วยเหตุผลบางประการ คุณจึงสามารถแก้ไขสิ่งที่อัปเดตบนเว็บไซต์อย่างเป็นทางการได้ทุกเมื่อ เลือกโปรแกรม Service Update คุณยังสามารถอัปเดตโมดูลสำหรับการสแกนและตรวจหาไวรัสได้

มีหลายวิธีในการสแกนหาไวรัสในคอมพิวเตอร์ของคุณ คลิกที่ปุ่ม สแกนคอมพิวเตอร์. І เลือกตัวเลือกที่คุณต้องการ เช่น
สแกนด่วน- วัตถุจะถูกสแกนสำหรับการทำงานอัตโนมัติและพื้นที่ทั้งหมดของการกระจาย ระบบปฏิบัติการ, ร้องเพลงรังของไวรัส
การสแกนคอมพิวเตอร์ภายนอก(ไม่มีความคิดเห็น)
การสแกนจมูกznіmnih- สแกนแฟลชไดรฟ์, ฮาร์ดไดรฟ์ USB
เลือกโฟลเดอร์ที่จะสแกนคุณเลือกโฟลเดอร์สำหรับสแกนหาไวรัสโดยอิสระ

หรือคุณสามารถคลิกที่ be-yakіy daddy ด้วยปุ่มเมาส์ขวาและในเมนูให้เลือก Scanuvati และ โฟลเดอร์ที่กำหนดจะถูกแปลเป็นไวรัส

การสแกน zavantazhennia OS ในช่วงเวลาหนึ่งชั่วโมง สำหรับคุณ ตัวอย่างเช่น การตรวจสอบการท่องอินเทอร์เน็ตเป็นเวลานาน คุณสามารถเปิดการตรวจสอบไฟล์ที่บุกรุกได้ในภายหลังและเมื่อระบบถูกโจมตี Avast เขียนไฟล์ใหม่ทั้งหมดที่สามารถนำไปใช้กับระบบปกติโดยข้าม Windows เอง โดยเฉพาะอย่างยิ่งฟังก์ชั่นที่คล้ายกัน ฉันไม่ได้พูดถึง Avast ที่ใดในโลก นอกจากนี้ยังเป็น zasіb ที่ดี ซึ่งช่วยในการโฆษณาแบนเนอร์ แม้ว่าจะไม่ใช่ใน vipadkіv 100%

Vіknoโปรแกรมป้องกันไวรัส Avast ก่อนความท้าทายหลักของ Windows

แซนด์บ็อกซ์อัตโนมัติ (" แซนด์บ็อกซ์อัตโนมัติ") เปิดตัวภาคผนวกที่น่าสงสัย สภาพแวดล้อมเสมือนจริงเสริมพลังน้ำตามธรรมชาติเหมือนระบบปกติ เวอร์ชันฟรี AVAST ของเรามีให้คุณ! แอนตี้ไวรัสฟรี รันเฉพาะโปรแกรมเหล่านั้น ถ้า Avast รู้ตัวเอง ถ้าโปรแกรมกลายเป็นเลอะเทอะ โปรแกรมก็ปิดไป ที่ รุ่นที่จำหน่ายได้แล้วอวาสต์! Pro Antivirus และ AVAST! Internet Security คุณสามารถรันโปรแกรมได้ด้วยตัวเองในสภาพแวดล้อมนี้ ตามความต้องการของคุณเอง

การบล็อกเว็บไซต์เดียวกันสำหรับที่อยู่เดียวกัน คุณสามารถเอาชนะฟังก์ชันนี้เพื่อควบคุมพ่อของคุณได้

มีทุกอย่างที่หน้าต่าง หน้าจอเรียลไทม์ vikni . นั้น นลัชตูวันยา. อาจกล่าวได้ว่า koristuvach ระดับกลางถูกบังคับให้เข้ารับตำแหน่งหน้าที่ของเจ้าหน้าที่ราวกับว่าเขียนไม่สมเหตุผล

<= IRP_MJ_MAXIMUM_FUNCTION; ++i) { DriverObject->MajorFunction[i] = FsFilterDispatchPassThrough; ) DriverObject->

// // ข้อมูลทั่วโลก FAST_IO_DISPATCH g_fastIoDispatch = ( sizeof (FAST_IO_DISPATCH), FsFilterFastIoCheckIfPossible, ... ); // // DriverEntry - ป้อนจุดของไดรเวอร์ NTSTATUS DriverEntry (__inout PDRIVER_OBJECT DriverObject, __in PUNICODE_STRING RegistryPath) ( ... // // ตั้งค่าตารางจัดส่ง io แบบเร็ว // DriverObject->

การตั้งค่ารูทีนการยกเลิกการโหลดไดรเวอร์

// // DriverEntry - ป้อนจุดของไดรเวอร์ NTSTATUS DriverEntry (__inout PDRIVER_OBJECT DriverObject, __in PUNICODE_STRING RegistryPath) ( ... // // ตั้งค่ารูทีนการยกเลิกการโหลดไดรเวอร์ (จุดประสงค์ในการดีบักเท่านั้น) // DriverObject->

< numDevices; ++i) { FsFilterDetachFromDevice(devList[i]); ObDereferenceObject(devList[i]); } KeDelayExecutionThread(KernelMode, FALSE, &interval); } }

IrpDispatch.c

ช่องทางการส่งสินค้า

// // ตัวจัดการ IRP ผ่าน NTSTATUS FsFilterDispatchPassThrough (__in PDEVICE_OBJECT DeviceObject, __in PIRP Irp) ( PFSFILTER_DEVICE_EXTENSION pDevExt = (PFSFILTER_DEVICE_EXTENSION)

สร้างส่ง

// // IRP_MJ_CREATE IRP Handler NTSTATUS FsFilterDispatchCreate (__in PDEVICE_OBJECT DeviceObject, __in PIRP Irp) ( PFILE_OBJECT pFileObject = IoGetCurrentIrpStackLocation (Irp) -> FileObject; DbgPrint

FastIo.c

// มาโครเพื่อทดสอบว่ารูทีนการจัดการ FAST_IO_DISPATCH นั้นถูกต้อง #define VALID_FAST_IO_DISPATCH_HANDLER(_FastIoDispatchPtr, _FieldName) \ (((_FastIoDispatchPtr) != NULL) && \ OFF ((_FastIoDispatchPtr)->Sizepatch(_FastIoDispatchPtr)_>Size *))) && \ ((_FastIoDispatchPtr)->_FieldName != NULL))

การส่งผ่าน I/O ที่รวดเร็ว

BOOLEAN FsFilterFastIoQueryBasicInfo (__in PFILE_OBJECT FileObject, __in BOOLEAN Wait, __out PFILE_BASIC_INFORMATION บัฟเฟอร์ __out PIO_STATUS_BLOCK IoStatus, __O PDEVICE_OBJECT DeviceObject) (// ผ่าน IoStatus ของ >VICE_OBJECT) DeviceExtension)->AttachedToDeviceObject; PFAST_IO_DISPATCH fastIoDispatch = nextDeviceObject->DriverObject -> FastIoDispatch;

อุปกรณ์ถอด I/O อย่างรวดเร็ว

ประกาศ.c

AttachDetach.c

การแนบ

การถอด

เป็นโมฆะ FsFilterDetachFromDevice (__in PDEVICE_OBJECT DeviceObject) ( PFSFILTER_DEVICE_EXTENSION pDevExt = (PFSFILTER_DEVICE_EXTENSION) DeviceObject->DeviceExtension; IoDetachDevice (pDevExt->

// // Misc BOOLEAN FsFilterIsMyDeviceObject (__in PDEVICE_OBJECT DeviceObject) (ส่งคืน DeviceObject->

แหล่งที่มาและ makefile

เนื้อหาจากไฟล์:

makefile เป็นมาตรฐาน:

ภาพรวม SC.EXE

Sc เริ่ม FsFilter

หยุดไดรเวอร์ระบบไฟล์

Sc หยุด FsFilter

Sc ลบ FsFilter

สคริปต์ผลลัพธ์

ก้าวหน้าขึ้นเรื่อยๆ

บทสรุป

ที่กระบังหน้าของเรา เราได้ส่งขั้นตอนง่ายๆ ให้กับคุณในการสร้างไฟล์ไฟล์ไฟล์ ไฟล์อื่นๆ ไฟล์ ไฟล์ ไฟล์ ไฟล์ไฟล์ ไฟล์ต่างๆ ยังสามารถรวมไฟล์ได้ เราได้พิจารณาสแต็กอุปกรณ์ระบบไฟล์พร้อมตัวกรองที่แนบมาและมีการพูดคุยถึงวิธีการตรวจสอบเอาต์พุตการดีบักจากไดรเวอร์ คุณสามารถใช้ทรัพยากรในบทความนี้เป็นโครงร่างสำหรับการพัฒนาไดรเวอร์ตัวกรองระบบไฟล์ของคุณเองและแก้ไขการทำงานที่จำเป็น

อ้างอิง

  1. เนื้อหาสำหรับนักพัฒนาระบบไฟล์หรือตัวกรองระบบไฟล์
  2. ตัวกรอง DDK ตัวอย่าง

หวังว่าคุณจะชอบบทแนะนำการพัฒนาไดรเวอร์ Windows ของเรา พร้อมที่จะจ้างทีมที่มีประสบการณ์เพื่อทำงานในโครงการของคุณเช่นการพัฒนาไดรเวอร์ตัวกรองระบบไฟล์หรือไม่? เพียงติดต่อเราและเราจะให้รายละเอียดทั้งหมดแก่คุณ!

บทช่วยสอนนี้จะให้ข้อมูลสรุปสั้นๆ เกี่ยวกับแฮ็กง่ายๆ สำหรับระบบไฟล์การพัฒนาไดรเวอร์อย่างง่าย ไดรเวอร์สาธิต คุณคิดอย่างไร จะทำอย่างไรกับชื่อไฟล์ที่เปิดอยู่เพื่อปลดล็อก

เอกสารนี้เขียนขึ้นสำหรับวิศวกรที่มี Windows Driver Development Experience หลัก ตลอดจนความรู้เกี่ยวกับ C / C ++ ในภาคผนวก vin ยังสามารถเป็นจุดเปลี่ยนสำหรับคนที่ไม่มีการพัฒนาไดรเวอร์ Windows อย่างลึกซึ้ง

เขียนโดย:
Sergey Podobriy,
หัวหน้าทีมคนขับ

ไดรเวอร์ตัวกรองระบบไฟล์ Windows คืออะไร

ไดรเวอร์ตัวกรองระบบไฟล์ Windows ถูกเรียกระหว่างการทำงานของ I/O ของระบบไฟล์ (สร้าง อ่าน เขียน เปลี่ยนชื่อ ฯลฯ) ซึ่งสร้างขึ้นเพื่อเปลี่ยนการทำงานของระบบไฟล์ ไดรเวอร์ตัวกรองระบบไฟล์เปรียบได้กับไดรเวอร์รุ่นเก่า แต่จะต้องใช้ขั้นตอนการพัฒนาพิเศษหลายขั้นตอน Zahist, แบ็คอัพ, สแน็ปช็อต และไดรเวอร์แฮ็คซอฟต์แวร์ป้องกันไวรัส

การพัฒนาไดรเวอร์ตัวกรองระบบไฟล์อย่างง่าย

ก่อนเริ่มพัฒนา

ขั้นแรก ในการขยายไฟล์ไดรเวอร์ระบบ คุณจะต้องใช้ชุด IFS หรือ WDK จากเว็บไซต์ของ Microsoft คุณยังสามารถเปลี่ยนค่า %WINDDK% ของสภาพแวดล้อมเพิ่มเติมสำหรับคอมพิวเตอร์ของคุณได้ ดังนั้นคุณจึงสามารถตั้งค่าชุด WDK/IFS ได้

ความสนใจ:ข้อผิดพลาดอื่นๆ ในไฟล์ระบบไดรเวอร์อาจทำให้เกิด BSOD หรือระบบไม่เสถียร

main.c

รายการไดรเวอร์ตัวกรองระบบไฟล์

จุดเชื่อมต่อ Tse สำหรับไดรเวอร์ใด ๆ รวมถึงไดรเวอร์ตัวกรองระบบไฟล์ คนแรกที่ต้องตำหนิคือร้าน DriverObject เป็นตัวแปรส่วนกลาง (เราจะใช้ในภายหลัง):

// // ข้อมูลส่วนกลาง PDRIVER_OBJECT g_fsFilterDriverObject = NULL; // // DriverEntry - ป้อนจุดของไดรเวอร์ NTSTATUS DriverEntry (__inout PDRIVER_OBJECT DriverObject, __in PUNICODE_STRING RegistryPath) ( สถานะ NTSTATUS = STATUS_SUCCESS; ULONG i = 0; // ASSERT (FALSE); // / เก็บวัตถุไดรเวอร์ของเรา // g_fsObjectsFilterDriver = DriverObject; ... )

การตั้งค่าตารางการจัดส่ง IRP

ขั้นตอนต่อไปในการขยายระบบไฟล์ของตัวกรองไฟล์คือการเติมตารางการจัดส่ง IRP พร้อมตัวชี้ฟังก์ชันไปยังตัวจัดการ IRP คุณมีตัวจัดการ IRP แบบพาส-ทรูเดียวในไดรเวอร์ของเจ้าหน้าที่ของเราซึ่งส่งคำขอเพิ่มเติม เราจะพิจารณาการใช้งานตัวจัดการ IRP ในภายหลัง

// // DriverEntry - ป้อนจุดของไดรเวอร์ NTSTATUS DriverEntry (__inout PDRIVER_OBJECT DriverObject, __in PUNICODE_STRING RegistryPath) ( ... // // เริ่มต้นตารางการส่งวัตถุของไดรเวอร์ // สำหรับ (i = 0; i<= IRP_MJ_MAXIMUM_FUNCTION; ++i) { DriverObject->MajorFunction[i] = FsFilterDispatchPassThrough; ) DriverObject->MajorFunction = FsFilterDispatchCreate; ... )

การตั้งค่าตารางจัดส่ง I/O อย่างรวดเร็ว

ไดรเวอร์ตัวกรองระบบไฟล์ต้องการตารางการจัดส่ง I/O ที่รวดเร็ว การไม่ตั้งค่าตารางนี้จะทำให้ระบบล่ม Fast I/O เป็นอีกโลกหนึ่งที่แตกต่างจากความคิดริเริ่มด้านฟังก์ชัน I/O ซึ่งเร็วกว่า IRP

// // ข้อมูลทั่วโลก FAST_IO_DISPATCH g_fastIoDispatch = ( sizeof (FAST_IO_DISPATCH), FsFilterFastIoCheckIfPossible, ... ); // // DriverEntry - ป้อนจุดของไดรเวอร์ NTSTATUS DriverEntry (__inout PDRIVER_OBJECT DriverObject, __in PUNICODE_STRING RegistryPath) ( ... // // ตั้งค่าตารางการจัดส่งแบบ fast-io // DriverObject->FastIoDispatch = &g_fastIo)

การลงทะเบียนการแจ้งเตือนเกี่ยวกับการเปลี่ยนแปลงระบบไฟล์

เมื่อขยายตัวกรองไฟล์ระบบไฟล์ เรามีหน้าที่ลงทะเบียนการแจ้งเตือนเกี่ยวกับไฟล์ระบบไฟล์การเปลี่ยนแปลง โปรดทราบว่าระบบไฟล์ใช้งานไม่ได้เมื่อเปิดใช้งาน หรือมีการเปลี่ยนแปลงในโหมดของไฟล์ไฟล์ไดรเวอร์

// // DriverEntry - ป้อนจุดของไดรเวอร์ NTSTATUS DriverEntry (__inout PDRIVER_OBJECT DriverObject, __in PUNICODE_STRING RegistryPath) ( ... // // เปลี่ยนเส้นทางการลงทะเบียนระบบไฟล์ // status = IoRegisterFs (!NT_SUCCESS (สถานะ)) (สถานะการส่งคืน ; ) ... )

การตั้งค่ารูทีนการยกเลิกการโหลดไดรเวอร์

ที่ส่วนท้ายของระบบไฟล์ การเริ่มต้นไดรเวอร์คือการตั้งค่ารูทีนการยกเลิกการโหลด รูทีนนี้จะช่วยให้คุณโหลดและยกเลิกการโหลดไดรเวอร์ตัวกรองไฟล์โดยไม่ต้องรีบูต ไดรเวอร์นี้สามารถตั้งค่าให้ไม่สามารถบล็อกได้เพื่อวัตถุประสงค์ในการปลดล็อกเท่านั้น เนื่องจากไม่สามารถดักจับตัวกรองระบบไฟล์ได้

// // DriverEntry - ป้อนจุดของไดรเวอร์ NTSTATUS DriverEntry (__inout PDRIVER_OBJECT DriverObject, __in PUNICODE_STRING RegistryPath) ( ... // // ตั้งค่าไดรเวอร์ยกเลิกการโหลด rutine (จุดประสงค์ในการดีบักเท่านั้น) // DriverObject->DriverUnload = STATUS_SUCCESS;)

ไดรเวอร์ระบบไฟล์ยกเลิกการโหลดการใช้งาน

รูทีนการยกเลิกการโหลดของไดรเวอร์จะล้างทรัพยากรและจัดสรรคืน เวลาที่จะมาถึงสำหรับการพัฒนาไดรเวอร์ระบบไฟล์คือการยกเลิกการลงทะเบียนการแจ้งเตือนการเปลี่ยนแปลงระบบไฟล์

// // Unload Routine VOID FsFilterUnload(__in PDRIVER_OBJECT DriverObject) ( ... // // รูทีนการโทรกลับที่ไม่ได้ลงทะเบียนสำหรับการเปลี่ยนแปลงระบบไฟล์ // IoUnregisterFsRegistrationChange(DriverObject, FsFilterNotificationCallback); ... )

หลังจากนั้นวิธีการลงทะเบียนการแจ้งเตือนคุณจะต้องคลิกผ่านประตูของภาคผนวกแล้วหันหลังกลับ รอห้าวินาทีจนกว่า IRP ที่ค้างอยู่ทั้งหมดจะเสร็จสิ้น โปรดทราบว่านี่เป็นวิธีแก้ปัญหาแบบแก้ปัญหาอย่างเดียว Tse ทำงานใน vipadkiv จำนวนมาก แต่ไม่ได้รับประกันว่าคุณจะมีสุขภาพดี

// // Unload รูทีน VOID FsFilterUnload(__in PDRIVER_OBJECT DriverObject) ( ... for (;;) ( IoEnumerateDeviceObjectList(DriverObject, devList, sizeof(devList), &numDevices); if (0 == numDevices) ( break; ) min( numDevices, RTL_NUMBER_OF(devList)); สำหรับ (i = 0; i< numDevices; ++i) { FsFilterDetachFromDevice(devList[i]); ObDereferenceObject(devList[i]); } KeDelayExecutionThread(KernelMode, FALSE, &interval); } }

IrpDispatch.c

ช่องทางการส่งสินค้า

ข้อแตกต่างเพียงอย่างเดียวคือตัวจัดการ IRP คือการส่งคำขอไปยังไดรเวอร์ถัดไป วัตถุไดรเวอร์ถัดไปถูกเก็บไว้ในส่วนขยายอุปกรณ์ของเรา

// ตัวจัดการ IRP แบบ Passthrough Ntstatus FSFilterdispatchpasshththythythyThththrough (__in pdevice_object deviceObject, __in pirp irp) (pfsfilter_device_extension pdevext = (pfsfilter_device_extension) deviceOmpject-> devicextenge; ioskipcurrentirpst ไดรฟ์;

สร้างส่ง

ทุกไฟล์สร้างการดำเนินการเรียกใช้ตัวจัดการ IRP หลังจากบันทึกชื่อไฟล์ด้วย PFILE_OBJECT เราจะพิมพ์เพื่อแก้ปัญหาเอาต์พุต นอกจากนี้ เมื่อคุณเลือกตัวจัดการการส่งผ่านที่เรา "ได้อธิบายไว้ข้างต้นแล้ว โปรดสังเกตว่าชื่อไฟล์ที่ถูกต้องมีอยู่ใน PFILE_OBJECT เท่านั้นจนกว่าการดำเนินการสร้างไฟล์จะเสร็จสิ้น! ทรัพยากรของปาร์ตี้ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับรายละเอียดเกี่ยวกับการดึงชื่อไฟล์ใน กรณีเหล่านั้น

// // IRP_MJ_CREATE ตัวจัดการ IRP NTSTATUS FsFilterDispatchCreate (__in PDEVICE_OBJECT DeviceObject, __in PIRP Irp) ( Irp);

FastIo.c

รูทีน I/O ต่อไปนี้ไม่ได้ทั้งหมดถูกทิ้งไว้เบื้องหลังเนื่องจากขอบเขตของระบบไฟล์ เราจะยังคงตรวจสอบความถูกต้องของตารางการจัดส่ง I/O ที่รวดเร็วสำหรับไดรเวอร์ถัดไปโดยใช้มาโครต่อไปนี้:

// มาโครเพื่อทดสอบว่ารูทีนการจัดการ FAST_IO_DISPATCH นั้นถูกต้อง #define VALID_FAST_IO_DISPATCH_HANDLER(_FastIoDispatchPtr, _FieldName) \ (((_FastIoDispatchPtr) != NULL) && \ OFF ((_FastIoDispatchPtr)->Sizepatch(_FastIoDispatchPtr)_>Size *))) && \ ((_FastIoDispatchPtr)->_FieldName != NULL))

การส่งผ่าน I/O ที่รวดเร็ว

ต่างจากคำขอ IRP การส่งคำขอ IO แบบเร็วต้องใช้โค้ดจำนวนมาก เนื่องจากฟังก์ชัน I/O ที่รวดเร็วมีชุดพารามิเตอร์ของตัวเอง หากคุณสามารถทราบข้อมูลเหล่านี้ได้ วิธีใช้ฟังก์ชันส่งผ่าน:

BOOLEAN FsFilterFastIoQueryBasicInfo(__in PFILE_OBJECT FileObject, __in BOOLEAN Wait, __out PFILE_BASIC_INFORMATION บัฟเฟอร์ __out PIO_STATUS_BLOCK IoStatus, __in PDEVICE_OBJECT DeviceObject) (// ผ่าน IoStatus ของ >VICE_OBJECT DeviceObject) DeviceExtension)->AttachedToDeviceObject; PFAST_IO_DISPATCH fastIoDispatch = nextDeviceObject->DriverObject ->FastIoDispatch; if (VALID_FAST_IO_DISPATCH_HANDLER(fastIoDispatch, FastIoQueryInBasicInfo)) (ส่งคืน (fastIoObjectIoDispatch))

อุปกรณ์ถอด I/O อย่างรวดเร็ว

ถอดอุปกรณ์เป็นคำขอ I/O ที่รวดเร็วซึ่งเราควรจัดการโดยไม่ต้องเรียกไดรเวอร์ถัดไป คุณมีหน้าที่รับผิดชอบในการเร่งให้อุปกรณ์ของเราแยกไฟล์ออกจากระบบไฟล์สแต็คของอุปกรณ์ หากคุณสามารถหาวิธีสาธิตโค้ดได้ คุณจะจัดการคำขอนี้ได้อย่างไร:

VOID FsFilterFastIoDetachDevice (__in PDEVICE_OBJECT SourceDevice, __in PDEVICE_OBJECT TargetDevice) ( // // แยกออกจากวัตถุอุปกรณ์โวลุ่มของระบบไฟล์ // IoDetachDevice (TargetDevice); IoDeleteDevice (SourceDe

ประกาศ.c

ระบบไฟล์ประกอบด้วยอุปกรณ์ควบคุมและอุปกรณ์ระดับเสียง อุปกรณ์โวลุ่มที่เชื่อมต่อกับสแต็คอุปกรณ์จัดเก็บข้อมูล อุปกรณ์ควบคุมได้รับการลงทะเบียนเป็นไฟล์ระบบ

การเรียกกลับถูกเรียกใช้สำหรับระบบไฟล์ที่ใช้งานอยู่ทั้งหมด ซึ่งเวลาที่ระบบไฟล์อีเธอร์ลงทะเบียนหรือยกเลิกการลงทะเบียนตัวเองว่าทำงานอยู่ นี่เป็นสถานที่ที่ดีสำหรับการเชื่อมต่อหรือขยายระบบไฟล์ของเราไปยังระบบไฟล์ หากไฟล์ของระบบถูกแฮ็ก เราต้องรับผิดชอบต่อความเสียหายต่อผู้จัดการของเรา (เนื่องจากไม่มีการแปรรูป) และแนะนำว่ามีการเชื่อมต่อกับพวกเขา เมื่อระบบไฟล์ถูกปิดใช้งาน เราจะเปิดไฟล์แนบการควบคุม ตรวจสอบไฟล์แนบของเรา และรายงาน การแสดงระบบไฟล์และอุปกรณ์โวลุ่มสามารถพบได้ในรูทีน FsFilterFastIoDetachDevice ซึ่งจะอธิบายไว้ก่อนหน้านี้

// // รูทีนคิวถูกเรียกใช้เมื่อระบบไฟล์มีอีเธอร์ลงทะเบียนหรือ // ยกเลิกการลงทะเบียนตัวเองเป็นระบบไฟล์ที่ใช้งานอยู่ VOID FsFilterNotificationCallback (__in PDEVICE_OBJECT DeviceObject, __in BODELEAN FsActive)

AttachDetach.c

ไฟล์นี้ควรลบที่จับสิ่งทอสำหรับการเชื่อมต่อ การจดจำ และแก้ไข เพื่อให้ตัวกรองของคุณมีความคล้ายคลึงกัน

การแนบ

У зв'язку з тим, щоб потребувати виклику IoCreateDevice для створення нового пристрою об'єкта з пристроєм extension, і вони propagated device object flags від пристрою об'єкта, щоб зайняти це для вирішення цього (DO_BUFFERED_IO, DO_DIRECT_IO, FILE_DEV. Існує завдання IoAttachDeviceToDeviceStackSafe วนซ้ำกับความล่าช้าในกรณีที่เกิดความล้มเหลว เพิ่มอ็อบเจ็กต์ในส่วนขยายอุปกรณ์และล้างค่าสถานะ DO_DEVICE_INITIALIZING

// // โครงสร้าง typedef struct _FSFILTER_DEVICE_EXTENSION ( PDEVICE_OBJECT AttachedToDeviceObject; ) FSFILTER_DEVICE_EXTENSION, *PFSFILTER_DEVICE_EXTENSION;

การถอด

การถอดออกค่อนข้างง่าย ส่วนขยายอุปกรณ์ เราได้รับอุปกรณ์ ที่เราเชื่อมต่อ และเรียก IoDetachDevice และ IoDeleteDevice

เป็นโมฆะ FsFilterDetachFromDevice (__in PDEVICE_OBJECT DeviceObject) ( PFSFILTER_DEVICE_EXTENSION pDevExt = (PFSFILTER_DEVICE_EXTENSION) DeviceObject->DeviceExtension; IoDetachDevice (pDevExt->AttachedToDeviceObject)

ตรวจสอบว่าอุปกรณ์ของเราเชื่อมต่ออยู่หรือไม่

Sob vikonati เมื่อคุณไปถึงภาคผนวกหรือไม่ คุณจะทำซ้ำผ่านภาคผนวกที่บันทึกสำหรับ vikoristannya IoGetAttachedDeviceReference และ IoGetLowerDeviceObject จากนั้นจะได้รับสำหรับภาคผนวกของเรา คุณสามารถระบุโปรแกรมเสริมของเราเพื่อเพิ่มความเร็วให้กับวัตถุไดรเวอร์ของไดรฟ์ด้วยโปรแกรมควบคุมของเรา (g_fsFilterDriverObject)

// // Misc BOOLEAN FsFilterIsMyDeviceObject (__in PDEVICE_OBJECT DeviceObject) ( return DeviceObject->DriverObject == g_fsFilterDriverObject; )

แหล่งที่มาและ makefile

ยูทิลิตี้ที่สร้างไดรเวอร์ ไดรเวอร์ wiki และไฟล์ไฟล์ ไฟล์ แทนที่เครื่องหมายการออกแบบและไฟล์ในชื่อ

เนื้อหาจากไฟล์:

TARGETNAME=FsFilter TARGETPATH=obj TARGETTYPE=DRIVER DRIVERTYPE=FS SOURCES=\Main.c\IrpDispatch.c\AttachDetach.c\Notification.c\FastIo.c

makefile เป็นมาตรฐาน:

รวม $(NTMAKEENV)\makefile.def

บรรทัดคำสั่งสร้างโครงการ MSVC makefile คือ:

โทร $(WINDDK)\bin\setenv.bat $(WINDDK) chk wxp cd /d $(ProjectDir) build.exe -I

วิธีการติดตั้งไดรเวอร์ตัวกรองระบบไฟล์

ภาพรวม SC.EXE

เราจะใช้ sc.exe (sc - service control) เพื่อควบคุมไดรเวอร์ของเรา ชัยชนะของบรรทัดคำสั่งของเครื่องมือที่จะใช้หรือเปลี่ยนบริการของฐานข้อมูล ฮิปนั้นมาพร้อมกับ Windows XP ขึ้นไป หรือคุณสามารถดาวน์โหลดได้ใน Windows SDK/DDK

ติดตั้งไดรเวอร์ตัวกรองระบบไฟล์

ก่อนติดตั้งไดรเวอร์ตัวกรองระบบไฟล์ ให้โทร:

Sc สร้าง FsFilter type=filesys binPath=c:\FSFilter.sys

สิ่งนี้จะสร้างศูนย์บริการใหม่ชื่อ FsFilter พร้อมประเภทบริการของระบบไฟล์และพาธไบนารีของ c:\FsFilter.sys

เริ่มไดรเวอร์ตัวกรองระบบไฟล์

กดปุ่ม ไดรเวอร์ตัวกรองระบบไฟล์ โทร:

Sc เริ่ม FsFilter

บริการ FsFilter จะเริ่มต้นขึ้น

หยุดไดรเวอร์ระบบไฟล์

ไปที่โปรแกรมควบคุมไฟล์ระบบไฟล์ โทร:

Sc หยุด FsFilter

บริการ FsFilter จะหยุดลง

ถอนการติดตั้งไดรเวอร์ตัวกรองระบบไฟล์

ในการติดตั้งไฟล์ไฟล์ระบบไดรเวอร์ ให้โทร:

Sc ลบ FsFilter

คำสั่งนี้ติดตั้งบริการตัวจัดการโดยลบรายการบริการที่มีชื่อ FsFilter

สคริปต์ผลลัพธ์

คุณสามารถเริ่มการลงโทษทั้งหมดในไฟล์แบตช์เดียวเพื่อให้การทดสอบไดรเวอร์ง่ายขึ้น หลังจากนั้น แทนที่จะเป็นไฟล์ Install.cmd ของเราเป็นไฟล์:

Sc create FsFilter type=filesys binPath=c:\FsFilter.sys sc start FsFilter หยุดชั่วคราว sc หยุด FsFilter sc ลบ FsFilter หยุดชั่วคราว

การเรียกใช้ตัวอย่างไดรเวอร์ตัวกรองระบบไฟล์

ดูด้านล่างเพื่อแสดงให้เห็นว่าตัวกรองระบบไฟล์ทำงานอย่างไร สำหรับสิ่งนั้น เราจะปรับแต่ง Sysinternals DebugView สำหรับ Windows สำหรับเอาต์พุตการดีบักของมอนิเตอร์ รวมถึง OSR Device Tree เพื่อตรวจสอบอุปกรณ์และไดรเวอร์

ขั้นแรก มาสร้างไดรเวอร์กันก่อน หลังจากนั้น ไฟล์ FsFilter.sys จะถูกดักจับ

ไฟล์ไดรเวอร์ตัวกรองระบบไฟล์และติดตั้งสคริปต์บนไดรฟ์ C

คลิกใหม่ Install.cmd เพื่อติดตั้งและเริ่มไฟล์ไดรเวอร์ไฟล์ และรอการป้อนข้อมูลของผู้ใช้

ติดตั้งและเริ่มต้นไดรเวอร์ตัวกรองระบบไฟล์สำเร็จแล้ว

ตอนนี้เราควรเริ่มยูทิลิตี้ DebugView

ในที่สุด เราก็สามารถเห็นได้ว่าไฟล์ใดถูกเปิดขึ้น! Tse หมายความว่าหุ่นยนต์กรองของเรา ตอนนี้เรามีหน้าที่รับผิดชอบเกี่ยวกับยูทิลิตี้ต้นไม้ของคุณและไดรเวอร์ของเราที่นั่น

คนขับรถของเราอยู่ในอันดับ

มีสิ่งปลูกสร้างต่างๆ มากมายสำหรับความช่วยเหลือจากคนขับของเรา มาเปิดไดรเวอร์ NTFS และดูโครงสร้างอุปกรณ์:

ไฟล์นี้ได้รับการพิสูจน์แล้วสำหรับ NTFS

เรา "ติดตั้งใหม่แล้ว มาดูระบบไฟล์อื่นๆ ด้วย:

ตัวกรองของเรารวมอยู่ในระบบไฟล์อื่นๆ ด้วย

คุณพูดถูก เราสามารถกดปุ่มบางปุ่มเพื่อเรียกใช้สคริปต์ของเรา หยุดและถอนการติดตั้งไดรเวอร์

ไดรเวอร์ตัวกรองระบบไฟล์ของเราถูกหยุดและถอนการติดตั้ง

เราสามารถกด F5 เพื่อรีเฟรชรายการโครงสร้างอุปกรณ์:

ไฟล์แนบของคุณไม่ได้ถูกเก็บไว้โดย strom

โปรแกรมควบคุมระบบไฟล์ของคุณหายไป และระบบทำงานเหมือนเมื่อก่อน

ก้าวหน้าขึ้นเรื่อยๆ

ไดรเวอร์ตัวกรองระบบไฟล์ที่อธิบายข้างต้นนั้นง่ายมาก และไม่มีฟังก์ชันจำนวนหนึ่งที่จำเป็นสำหรับไดรเวอร์ทั่วไป แนวคิดของบทความนี้คือการแสดงวิธีที่ง่ายที่สุดในการสร้างไดรเวอร์ตัวกรองระบบไฟล์ ซึ่งเป็นเหตุผลที่เราอธิบายขั้นตอนการพัฒนาที่ง่ายและเข้าใจง่าย คุณสามารถเสนอราคากับตัวจัดการ IRP_MJ_FILE_SYSTEM_CONTROL จากเลนของคุณก่อนทำการซื้อขายหากมีข้อมูล

© 2022 androidas.ru - ทั้งหมดเกี่ยวกับ Android