พร็อกซีที่ให้ผ่าน AdditionalBrowserArguments จะกลายเป็นส่วนหนึ่งของคำสั่งเริ่มทำงานของกระบวนการเบราว์เซอร์ WebView2 การแก้ไขอ็อบเจ็กต์ตัวเลือกนั้นในภายหลังจะไม่เขียนบรรทัดคำสั่งของกระบวนการที่กำลังทำงานใหม่

สำหรับแอปพลิเคชัน .NET ที่สร้างเส้นทางอิสระ ให้เลือกโฟลเดอร์ข้อมูลผู้ใช้ที่เป็นของแอปพลิเคชันก่อนเริ่มต้นควบคุม:

var options = new Microsoft.Web.WebView2.Core.CoreWebView2EnvironmentOptions
{
    AdditionalBrowserArguments = "--proxy-server=http://proxy.example:8080"
};
var environment = await Microsoft.Web.WebView2.Core.CoreWebView2Environment
    .CreateAsync(userDataFolder: profileFolder, options: options);
await browser.EnsureCoreWebView2Async(environment);

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

อ็อบเจ็กต์ตัวเลือกใหม่ไม่ใช่กระบวนการใหม่

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

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

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

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

บทความที่เกี่ยวข้อง