다음을 통해 공유


ASP.NET 브라우저 등록 도구(Aspnet_regbrowsers.exe)

ASP.NET 브라우저 등록 도구는 시스템 차원의 브라우저 정의를 모두 어셈블리로 구문 분석하여 컴파일하고 이 어셈블리를 전역 어셈블리 캐시에 설치합니다. 이 도구에서는 .NET Framework Browsers 하위 디렉터리의 브라우저 정의 파일(.BROWSER 파일)을 사용합니다. 이 도구는 %SystemRoot%\Microsoft.NET\Framework\version\ 디렉터리에 있습니다.

ASP.NET 버전 1.1에는 Machine.config 파일에 **<browserCaps>**라는 섹션이 있습니다. 이 섹션에는 정규식을 기반으로 다양한 브라우저에 대한 구성을 정의한 일련의 XML 엔트리가 포함됩니다. ASP.NET 버전 2.0에서는 새로운 .BROWSER 파일이 XML 엔트리를 사용하여 특정 브라우저의 매개 변수를 정의합니다. 새로운 .BROWSER 파일을 시스템의 %SystemRoot%\Microsoft.NET\Framework\version\CONFIG\Browsers 폴더에 추가하여 새 브라우저에 대한 정보를 추가합니다.

응용 프로그램에서는 브라우저 정보가 필요할 때마다 .config 파일을 읽지 않으므로 사용자가 새 .BROWSER 파일을 만들고 Aspnet_regbrowsers.exe를 실행하여 필요한 변경 내용을 어셈블리에 추가할 수 있습니다. 이렇게 하면 서버에서 새 브라우저 정보에 바로 액세스할 수 있으므로 정보를 선택하기 위해 응용 프로그램을 종료할 필요가 없습니다. 응용 프로그램에서는 현재 HttpRequestBrowser 속성을 통해 브라우저 기능에 액세스할 수 있습니다.

구문

aspnet_regbrowsers.exe <options>

옵션

옵션 설명

-?

명령 창에 Aspnet_regbbrowsers.exe 도움말 텍스트를 표시합니다.

-i

런타임 브라우저 기능 어셈블리를 만들어 전역 어셈블리 캐시에 설치합니다.

-u

전역 어셈블리 캐시에서 런타임 브라우저 기능 어셈블리를 제거합니다.

설명

브라우저 정의 파일은 시스템 차원 또는 응용 프로그램별 파일일 수 있으며 각 형식마다 다른 위치에 저장됩니다. 시스템 차원의 브라우저 정의 파일은 %SystemRoot%\Microsoft.NET\Framework\version\CONFIG\Browsers 디렉터리에 저장됩니다. 이 디렉터리에는 해당 버전의 .NET Framework와 함께 제공되는 미리 정의된 브라우저 정의 파일과 소프트웨어 업데이트 또는 서비스 팩에서 복사된 추가 브라우저 정의 파일이 모두 포함됩니다. ASP.NET에 기본적으로 포함된 미리 정의된 브라우저 정의 파일을 변경할 경우 서비스 팩 설치 시 해당 파일이 업데이트되어 변경 내용을 덮어쓰게 되므로 파일을 변경하지 마십시오.

응용 프로그램별 브라우저 정의 파일은 응용 프로그램의 App_Browsers 디렉터리에 배치될 수 있습니다. 이러한 두 위치에 있는 브라우저 정의 파일 이름의 확장명은 .BROWSER여야 합니다. 응용 프로그램의 App_Browsers 디렉터리에 저장된 응용 프로그램별 브라우저 정의 파일에는 ASP.NET 브라우저 등록 도구를 사용해도 영향이 없습니다.

시스템 수준의 브라우저 정의 파일이 수정될 때 모든 응용 프로그램에 대한 브라우저 기능 업데이트가 자동으로 수행되지는 않습니다. 브라우저 기능 어셈블리를 업데이트하려면 ASP.NET 브라우저 등록 도구를 실행해야 합니다.

참고

ASP.NET 브라우저 등록 도구는 도구 버전에 해당하는 .NET Framework 버전의 Browsers 디렉터리에 있는 브라우저 정의를 컴파일합니다. .NET Framework의 각 버전마다 자체의 도구가 있습니다.

ASP.NET 브라우저 등록 도구는 시스템 차원의 브라우저 정의를 모두 어셈블리로 구문 분석하여 컴파일하고 이 어셈블리를 전역 어셈블리 캐시에 설치합니다. 시스템 차원의 브라우저 정의에 오류가 있으면 도구에서 해당 오류를 보고합니다. 브라우저 기능 어셈블리는 시스템의 모든 웹 응용 프로그램에서 사용됩니다. BrowserCapabilitiesCodeGenerator 클래스를 사용하여 시스템 차원의 브라우저 정의 파일을 프로그래밍 방식으로 다시 컴파일할 수도 있습니다.

동작

ASP.NET 브라우저 등록 도구가 실행되면 새 어셈블리가 만들어지고 모든 웹 응용 프로그램에 대한 영향은 Machine.config 파일이 변경된 경우와 동일합니다. 즉, 실행 중인 모든 웹 응용 프로그램이 재생되고 Microsoft IIS(인터넷 정보 서비스)가 다시 시작됩니다. 도구에서도 임의의 개인 토큰 파일이 생성되고 어셈블리 서명을 위한 키 파일이 만들어지므로 어셈블리를 전역 어셈블리 캐시에 설치할 수 있습니다. 도구 실행이 완료되면 키 파일이 제거되고 공개 키만 남습니다.

런타임에 브라우저 정의 파일 정보는 BrowserCapabilitiesFactory 개체의 알려진 브라우저 컬렉션에 병합됩니다. 요청이 들어오면 ASP.NET에서는 요청한 브라우저를 요청 헤더로 식별한 다음 요청된 브라우저의 형식에 해당되는 HttpBrowserCapabilities 개체를 컴파일합니다.

참고

Web.config 파일에서 <browserCaps> 요소를 사용하여 브라우저를 정의하는 기능은 .NET Framework 버전 2.0에서 더 이상 사용되지는 않지만 계속 지원됩니다. 이 요소의 데이터는 브라우저 정의 파일의 정보에 병합됩니다.

반면에 응용 프로그램 수준의 브라우저 정의 파일은 응용 프로그램이 시작되는 경우 요청에 따라 자동으로 구문 분석되고 컴파일됩니다. 응용 프로그램의 Browsers 디렉터리에 변경 사항이 있으면 응용 프로그램이 자동으로 다시 컴파일됩니다. 응용 프로그램 수준의 브라우저 정보 파일에는 ASP.NET 브라우저 등록 도구가 아무런 영향을 미치지 않습니다.

예제

시스템 차원의 브라우저 정의를 모두 어셈블리로 구문 분석하여 컴파일하고 해당 어셈블리를 전역 어셈블리 캐시에 설치하려면 Aspnet_regbrowsers.exe를 실행하십시오. 다음 명령은 어셈블리를 만들고 설치합니다.

C:\WINDOWS\Microsoft.NET\Framework\<versionNumber>\aspnet_regsql.exe -i

전역 어셈블리 캐시에서 브라우저 정의 어셈블리를 제거하는 데도 이 도구를 사용할 수 있습니다. 다음 명령은 전역 어셈블리 캐시에서 브라우저 정의 어셈블리를 제거합니다.

aspnet_regsql.exe -u

ASP.NET 브라우저 등록 도구 사용에 대한 도움말을 보려면 다음 명령을 사용하십시오.

aspnet_regsql.exe -?

참고 항목

작업

방법: ASP.NET 웹 페이지에서 브라우저 종류 검색

참조

브라우저 정의 파일 스키마(browsers 요소)
BrowserCapabilitiesFactory
Browser
HttpCapabilitiesBase

개념

ASP.NET 웹 서버 컨트롤 및 브라우저 기능
브라우저 정의 파일 보안