การตั้งค่าสำหรับโปรแกรมที่ไม่ใช่เว็บ (โปรแกรมเดสก์ท็อป) มักพบในรีจิสทรี เมื่อทำการทดสอบอัตโนมัติของโปรแกรมเหล่านี้คุณต้องจัดการกับรีจิสทรีบ่อยครั้ง แก้ไขการตั้งค่าของโปรแกรมโดยการแก้ไขรีจิสทรี
บทนี้แนะนำวิธีการใช้โปรแกรม C# เพื่อใช้งานรีจิสทรีโดยเฉพาะวิธีการใช้งานรีจิสทรีของระบบปฏิบัติการ 64 บิต
การอ่านเนื้อหา
การทดสอบอัตโนมัติมักจะต้องมีการปรับเปลี่ยนรีจิสทรี
การตั้งค่าระบบจำนวนมาก (เช่นการตั้งค่า IE) พบได้ในรีจิสทรี การตั้งค่าแอปพลิเคชันเดสก์ท็อปยังมีอยู่ในรีจิสทรี ดังนั้นเมื่อทำการทดสอบอัตโนมัติคุณมักจะต้องปรับเปลี่ยนรีจิสทรี
รู้เบื้องต้นเกี่ยวกับการลงทะเบียน Windows
Registry Editor อยู่ใน C: /windows/regedit.exe หรือในขณะที่ทำงานให้เรียกใช้ "regedit" คุณสามารถเริ่มต้นโปรแกรมแก้ไขรีจิสทรี
รีจิสทรีประกอบด้วยคีย์หลักคีย์คีย์ย่อยและรายการมูลค่า รูปต่อไปนี้
เนื้อหาในคีย์หลัก: HKEY_CURRENT_USER และ HKEY_LOCAL_MACHINE มีความคล้ายคลึงกันหนึ่งคือการตั้งค่าของผู้ใช้ปัจจุบันและอื่น ๆ คือการตั้งค่าของเครื่อง
C# แก้ไขรีจิสทรี
มันง่ายเกินไปที่จะปรับเปลี่ยนรีจิสทรีใน C# เพิ่มก่อนโดยใช้ microsoft.win32; แล้วคุณจะทำมันให้เสร็จ ดูตัวอย่างด้านล่างอ่านเพิ่มลบแก้ไขและมีการดำเนินการทั้งหมด
โมฆะคงที่หลัก (สตริง [] args) {// อินสแตนซ์, แก้ไข IE Homepage RegistryKey localMachine = Registry.currentuser; RegistryKey Sougou = localMachine.opensubkey (@"ซอฟต์แวร์/Microsoft/Internet Explorer/Main", จริง); // รับ ie homepage string เวอร์ชัน = sougou.getValue ("หน้าเริ่มต้น"). toString (); // แก้ไข IE หน้าแรก sougou.setValue ("หน้าเริ่มต้น", "http://www.cnblogs.com/", registryValueKind.string); // แก้ไขรายการค่า tanktest หากไม่มีอยู่ให้สร้างรายการค่า tanktest ใหม่ Sougou.SetValue ("TankTest2", "1", RegistryValueKind.dWord); // ลบรายการค่า sougou.deletevalue ("tanktest2"); // สร้าง subkey sougou.createsubkey ใหม่ ("นี่คือ subkey1"); sougou.createsubkey ("นี่คือ subkey2"); // ลบ subkey sougou.deletesubkey ("นี่คือ subkey1"); -ความแตกต่างระหว่างระบบปฏิบัติการ 32 บิตกับรีจิสทรีระบบปฏิบัติการ 64 บิต
รหัสข้างต้นใช้งานได้ดีในระบบปฏิบัติการ 32 บิต แต่จะไม่ทำงานในระบบปฏิบัติการ 64 บิต
นอกจากนี้ยังมีแอปพลิเคชัน 32 บิตและ 64 บิต ในระบบปฏิบัติการ 64 บิตแอปพลิเคชัน 32 บิตและแอปพลิเคชัน 64 บิตสามารถเรียกใช้ได้
หากคุณติดตั้งแอปพลิเคชัน 32 บิตในระบบปฏิบัติการ 64 บิตจะติดตั้งภายใต้ไฟล์ C:/โปรแกรม (x86)/ เริ่มตัวจัดการงานและคุณจะเห็นชื่อกระบวนการของโปรแกรม 32 บิตและจะนำ "*32" ดังที่แสดงด้านล่าง:
หมายเหตุ: ในระบบปฏิบัติการ 64 บิต:
รีจิสทรีสำหรับโปรแกรม 64 บิตยังคงอยู่ใน: HKEY_LOCAL_MACHINE/ซอฟต์แวร์/Microsoft/Internet Explorer
รีจิสทรีของโปรแกรม 32 บิตแทนใน: HKEY_LOCAL_MACHINE/SOFTWARE/WOW6432Node/Microsoft/Internet Explorer
โปรแกรม C# เข้าถึงรีจิสทรีของระบบปฏิบัติการ 64 บิต
โปรแกรม C# ทั้งหมด 32 บิต เมื่อเข้าถึงรีจิสทรีพวกเขาจะเข้าถึง HKEY_LOCAL_MACHINE/SOFTWARE/WOW6432NODE/แต่พวกเขาไม่สามารถเข้าถึง HKEY_LOCAL_MACHINE/ซอฟต์แวร์/
ก่อนหน้านี้. NET 3.5 C# โปรแกรมที่จำเป็นในการเข้าถึงรีจิสทรีของระบบปฏิบัติการ 64 บิตผ่านฟังก์ชั่น Win32 API (ด้วยรหัสหลายร้อยบรรทัดที่จำเป็น) เพื่อเข้าถึงรีจิสทรีของระบบปฏิบัติการ 64 บิต
เป็นเรื่องง่ายที่จะเข้าถึงรีจิสทรีของระบบปฏิบัติการ 64 บิตหลังจาก. NET 4.0
โมฆะคงที่หลัก (สตริง [] args) {// แก้ไขรีจิสทรีของระบบปฏิบัติการ 64 บิต // แก้ไขหน้าแรกของ IE // ใช้ RegistryView เพื่อระบุว่าเป็นระบบปฏิบัติการ 64 บิต localkey = localkey.opensubkey (@"ซอฟต์แวร์/Microsoft/Internet Explorer/Main", TRUE); if (localkey! = null) {localKey.SetValue ("หน้าเริ่มต้น", "http://www.cnblogs.com"); -ข้างต้นคือข้อมูลเกี่ยวกับการอ่านการทดสอบอัตโนมัติและการเขียนรีจิสทรีระบบปฏิบัติการ 64 บิต เราจะจัดระเบียบข้อมูลที่เกี่ยวข้องต่อไปในอนาคต ขอบคุณสำหรับการสนับสนุนเว็บไซต์นี้!