문제

버전과 인스턴스에 대한 사용 가능한 정보를 어떻게 효율적이고 효과적으로 감지할 수 있습니까? 실버라이트 현재 브라우저에서 실행 중입니까?

도움이 되었습니까?

해결책

Silverlight 컨트롤에는 IsVersion지원 함수, 버전 번호를 제공하면 true / false를 반환합니다. 예:

if(slPlugin.isVersionSupported("2.0")) {
  alert("I haz some flavour of Silverlight 2");

버전 문자열에 다음이 모두 포함될 수 있으므로 빌드를 확인할 때 원하는 대로 구체적으로 지정할 수 있습니다.

  • major - 메이저 번호
  • 마이너 - 마이너 번호
  • 빌드 - 빌드 번호
  • 개정 - 개정 번호

따라서 다음과 같이 특정 빌드 번호를 확인할 수 있습니다.

if(slPlugin.isVersionSupported("2.0.30523")) {
  alert("I haz Silverlight 2.0.30523, but could be any revision.");

Silverlight 1.0 베타에는 isVersionSupported() 메서드로 대체된 control.settings.version 속성이 포함되었습니다..특정 버전의 Silverlight에 대해 프로그래밍하면 안 된다는 생각입니다.그보다는 클라이언트가 적어도 버전 1.0, 2.0 등

즉, Silverlight 플러그인 설명을 확인하여 Firefox에서 Silverlight 버전 번호를 확인할 수 있습니다.

alert(navigator.plugins["Silverlight Plug-In"].description);

내 컴퓨터에 '2.0.30523.8'이 표시됩니다.

릴리스된 모든 버전 번호를 반복하여 무차별 대입 공격이 가능하다는 점에 유의하세요. 아마도 그게 BrowserHawk가 하는 일인 것 같아요 - 클라이언트가 설치한 Silverlight 버전을 보고합니다.

다른 팁

나는 이것을에게서 얻었다 http://forums.asp.net/p/1135746/1997617.aspx#1997617 같은 링크야 스투 너에게 줬다.방금 코드 조각을 포함시켰습니다.

Silverlight.isInstalled = function(d)
{
    var c = false, a = null;
    try
    {
        var b = null;
        if(Silverlight.ua.Browser == "MSIE")
            b = new ActiveXObject("AgControl.AgControl");
        else
            if(navigator.plugins["Silverlight Plug-In"])
            {
                a = document.createElement("div");
                document.body.appendChild(a);
                a.innerHTML = '<embed type="application/x-silverlight" />';
                b = a.childNodes[0]
            }

        if(b.IsVersionSupported(d))
            c = true;
        b = null;
        Silverlight.available = true
    }
    catch(e)
    {
        c=false
    }

    if(a)
        document.body.removeChild(a);
    return c
};

Silverlight의 정식 버전을 감지하는 이 사이트를 찾았습니다. 실버라이트 버전 (일명 silverlightversion.com)

위 설명에서 언급했듯이 현재 설치된 Silverlight 버전 번호(크로스 브라우저 플랫폼에서 작동)를 얻을 수 있는 효율적이고 직접적인 방법은 없습니다.

저는 이 문제를 해결하고 JavaScript를 사용하여 프로그래밍 방식으로 더 효율적으로 Silverlight 주 버전 번호(버전 3 포함)를 검색하는 방법에 대한 게시물을 작성했습니다.

다음에서 코드와 게시물을 찾을 수 있습니다.

http://www.apijunkie.com/APIJunkie/blog/post/2009/04/How-to-programmatically-Detect-Silverlight-version.aspx

행운을 빌어요!

Environment.Version은 원하는 대로 작동합니다!Silverlight 2.0부터 지원됨

silverlight.js를 살펴보세요.

http://forums.asp.net/p/1135746/1997617.aspx#1997617

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top