이 기사에서는 C# Windows Forms 응용 프로그램에서 WebBrowser 컨트롤을 강제로 설치된 Internet Explorer 버전을 사용하도록 강제하는 방법을 설명합니다. 기본 동작은 IE7을 사용하는 것이지만 이는 재정의 할 수 있습니다.
레지스트리 키 값 : 코드는 예로 오류 처리 : 레지스트리 액세스 중에 잠재적 예외를 포착하기위한 오류 처리가 포함되어 있습니다. 권한 : 응용 프로그램은 레지스트리를 수정하기 위해 고상한 권한이 필요할 수 있습니다. 필요한 권한을 요청하려면 매니페스트 파일 항목을 추가하는 것을 고려하십시오. Windows 10 호환성 : Windows 10과의 호환성의 경우 메타 태그를 웹 페이지에 추가하는 것을 고려하십시오.
최신 브라우저 :인터넷 익스플로러에 의존하는 것은 일반적으로 수명이 끝나기 때문에 낙담합니다. 가능한 경우보다 현대적인 렌더링 엔진 또는 브라우저 제어를 고려하십시오.
<code class="language-csharp">private void Form1_Load(object sender, EventArgs e) { string appName = Process.GetCurrentProcess().ProcessName + ".exe"; SetIEVersionKey(appName, 11001); // Use IE11 (Edge mode, regardless of DOCTYPE) - Adjust as needed } private void SetIEVersionKey(string appName, int ieVersion) { RegistryKey regKey = null; try { // Handle 64-bit and 32-bit systems regKey = Environment.Is64BitOperatingSystem ? Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION", true) : Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION", true); if (regKey == null) { MessageBox.Show("Registry access failed."); return; } if (regKey.GetValue(appName) == null || (int)regKey.GetValue(appName) != ieVersion) { regKey.SetValue(appName, ieVersion, RegistryValueKind.DWord); MessageBox.Show("IE version setting applied successfully."); } else { MessageBox.Show("IE version setting already present."); } } catch (Exception ex) { MessageBox.Show($"Registry operation failed: {ex.Message}"); } finally { regKey?.Close(); } }</code>
를 응용 프로그램의 실제 이름으로 바꾸는 것을 잊지 마십시오. 귀하의 요구에 가장 적합한 방법을 선택하고 항상 철저히 테스트하십시오.
위 내용은 Webbrowser 컨트롤이 최신 설치된 Internet Explorer 버전을 사용하도록 강요하려면 어떻게해야합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!