블로그 이미지
내게 능력 주시는 자 안에서 내가 모든것을 할수 있느니라 - 빌립보서 4 : 13 - happydong

카테고리

Happydong (1363)
프로그래밍 (156)
01.C#기초 (4)
02.C#고급 (13)
03.ASP.NET (28)
04.HTML&Script (17)
05.Silverlight (38)
06.C 언어 기초 (2)
07.iOS (14)
08.Java (5)
09.SQL (8)
10.컴퓨터보안 (10)
11.패턴이야기 (3)
12.유니티3D (1)
13.Ubuntu (7)
14.Node.js (6)
MUSIC (16)
인물 (3)
Utility (10)
세미나 소식&내용 (22)
IT뉴스 (18)
운동 (830)
CAFE (10)
Life (282)
Total
Today
Yesterday

'프로그래밍/05.Silverlight'에 해당되는 글 38건

  1. 2009.07.29 실버라이트 설치 안될경우 해결방법!! 31
  2. 2009.06.30 스크립트로 실버라이트 띄우기
  3. 2009.06.30 실버라이트 EMBED 태그로 띄우기!! 2



요즘 회사에서 가끔 Silverlight 설치관련 CS건을 처리하고 있다. 몇일 안됐지만 혹시나 설치문제 때문에 고민하고 있는 사람들에게 유용한 정보가 되길 바란다.(또한 나도 잊어 버리지 않기위해 포스팅한다.크큭)

문제1. 예전에 잘 봤는데 어느순간 실버라이트가 안나오는 경우.

거의 대부분은 실버라이트를 분명히 설치해서 잘 보고 있다가 갑자기 어느순간 부터 안되는 경우가 대부분이 아닐까 생각한다. 모 그렇지 안은 경우도 있지만, 몇일 CS를 해보니깐..아무것도 모르는 클라이언트들은 어느순간 갑자기 실버라이트 동영상이 안나온다고 한다. 이는 실버라이트 2에서 3로 되면서 문제 인듯하다. 이럴 때는 그냥 제어판에서 Silverlight를 찾아서 지웠다가 Silverlight 3로 깔면 된다.

사용자 삽입 이미지


이렇게 다시 깔아서 확인해 보고 되면 다행이다. (단, 실버라이트를 제 설치할때는 모든 띄워져 있는 브라우져는 꺼주길 바란다.)

문제2. 1번 과정을 수행후에도 실버라이트를 설치하라고 나옴.

 분명히 실버라이트를 삭제하고, 브라우져를 다 닫은 상태에서 설치를 했음에도 실버라이트를 제 설치하라는 멘트가 나오는 경우가있다. 이럴 경우에는 인터넷 도구 >> 추가기능관리 >> 추가기능 사용 또는 사용안함을 클릭한다. (또는, 인터넷 옵션 >> 프로그램 >> 추가기능관리 클릭!!) 여기에서 실버라이트를 찾아서 사용 안함으로 되어 있는지 확인을 한다. 사용 안함으로 되어 있을 경우 사용함으로 변경하고 확인을 클릭한다. 이후 브라우져를 닫았다가 다시 열어서 확인하면 될 것이다.

사용자 삽입 이미지



문제3. 실버라이트가 제어판에서 안지워져요.

간혹 제어판에서 프로그램을 지우려고 하는데 안지워지는 경우가 있다. 이럴때는 Windows Installer CleanUp 유틸리티를 이용해서 삭제하면된다. (다운로드) 이는 MS제품에 관련해서 삭제가 가능한 유틸리티이다. 자세한 내용은 링크를 확인 하기 바란다. (단, Vista에서는 잘 작동이 안되는 것같다. XP사용자 대상으로 확인 했을 때는 잘 작동했음.)

사용자 삽입 이미지


설치를 다하고 실행을해 보면 위 그림과 같이 띄워질것이다. 여기서 실버라이트를 찾아서 선택을하고 나면 Remove가 활성화가 될 것이다. 이를 클릭해서 지우면 깔끔하게 지워질 것이다. 이렇게 지워다면 1번 내용과 같이 다시 설치해 보라.

문제4. 실버라이트를 지웠는데...실버라이트 설치시 실버라이트가 설치가 되어 있다고 나오는 경우.

 이는 참 특이한 경우다. 오늘 이런 사용자가 있어서 처리 내용을 기록해본다. 실버라이트가 제어판에서 삭제가 되지 않아 3번 과정을 거쳐서 실버라이트를 삭제를 했다. 이후 1번 과정과 같이 제설치를 시도하는데 설치중에 이미 설치가 되어 있다고 나오는 것이다. 그래서 제어판을 확인 하니 아무데도 실버라이트 설치 흔적을 찾을수 없었다. 이상해서 2번 내용과 같이 추가기능관리를 확인을 해봤다. 그런데 거기에 실버라이트 사용이라 되있는게 아닌가...이상한다..분명히 제거 했는데...제거가 잘못 된것 같다고 생각이 되서, 레지스트리에서 Silverlight를 찾아서 제거후 1번과정으로 재설치하니 해결이 됐다.

사용자 삽입 이미지




이상 내가 경험한 몇가지 처리 방법에 대해 작성해 보았다. 나중에 또 이상한게 있으면 계속 업데이트 하겠다.

참고 링크 :  실버라이트 설치 실패를 해결하는 방법
Posted by happydong
, |



" 스크립트로 실버라이트 띄우기 "

Silverlight.js를 이용한 실버라이트 애플리케이션 띄우기!!
참고 내용은 공도님 블로그.

위 스크립트를 웹사이트에 넣어주고 페이지에 스크립트 참조를 한다.

<script type="text/javascript" src="Silverlight.js"></script>

스크립트 생성 코드

<body>

    <div id="silverlightControlHost">

    </div>

</body>

</html>
<script type="text/javascript">

 

    Silverlight.createObjectEx({

        source: "/TestProject01.Web/ClientBin/TestProject01.xap",

        parentElement: document.getElementById("SilverlightControlHost"),

        id: "SilverlightControl",

        properties: {

            width: "100%",

            height: "100%",

            version: "1.0",

            background: "white",

            isWindowless: "true",

            framerate: "24"

        },

        events: {

            onLoad: null

        }

    });

</script>


스크립트 소스 코드는 눈으로 봐도 알 것이다.
Posted by happydong
, |



" 실버라이트 EMBED 태그로 띄우기!! "

 
별 의미 없는 내용일수도 있다. 하지만 일전의 나의 경험으로 미루어 봤을 때 나에겐 정말 좋은 정보였던 것 같다. 몇 일전 난 내가 만든 실버라이트 애플리케이션을 어떤 사이트에 올리려고 했는데...그 사이트의 보안상의 이유인지 Object태그가 있으면 그 부분을 삭제 또는 Replace 하는 것 이다. 그래서 안되는 가 보다 하고 포기하려는 순간.. 그 몇 일 전에 내가 올릴 유튜브 동영상은 잘 동작하고 있는 것이 생각났다. 그래서 난 플래시인 유튜브 동영상은 잘되는데 왜 실버라이트는 안될까 해서 Debugbar를 이용해서 유투브동영상은 어떻게 되어 있는지 봤다. 그런데 embed태그 아닌가그럼 실버라이트도 embed태그를 이용하면 되지 않을까 해서 나의 테스트는 시작 되었다.

 

ㅁ 테스트 프로젝트 구성

 

Page.xaml

<UserControl x:Class="TestProject01.Page"

    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

    Width="400" Height="300">

    <Grid x:Name="LayoutRoot" Background="Yellow">

        <TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" x:Name="TestTextBlock" Text="값이 없음." />

    </Grid>

</UserControl>

 

App.xaml.cs

private void Application_Startup(object sender, StartupEventArgs e)

{

Page page = new Page();

string val = e.InitParams["value"];

page.TestTextBlock.Text = val;

this.RootVisual = page;

}

 

위 코드와 같이 아주아주 간단한 실버라이트 프로젝트를 만들어 봤다. (너무 간단한가^^;;;)

그냥 App에서 InitParams로 넘어온 값을 받아서, Page.xaml안에  TextBlock에게 값을 넘겨줘서 뿌려주는 것이다.

 

Object 태그 사용

 

Object 태그 사용

<object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%">

<param name="source" value="ClientBin/TestProject01.xap"/>

<param name="onerror" value="onSilverlightError" />

<param name="background" value="white" />

<param name="minRuntimeVersion" value="2.0.31005.0" />

<param name="autoUpgrade" value="true" />

<param name="initParams" value="value=Object태그"

<a href="http://go.microsoft.com/fwlink/?LinkID=124807" style="text-decoration: none;">

<img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="Get Microsoft Silverlight" style="border-style: none"/>

</a>

</object>

 

 결과 그림 )

사용자 삽입 이미지


일반적으로 사용되는 거라 따로 설명이 필요 없을 것이다.

 

embed 태그 사용

 

Embed 태그 사용

<embed data="data:application/x-silverlight-2," id="silverlight1" type="application/x-silverlight-2"

source="ClientBin/TestProject01.xap" initParams="value=embed태그" width="100%" height="100%" background="white" >

</embed>

 

 결과 그림 ) 

사용자 삽입 이미지


Object태그에서는 Param 엘리먼트를 이용해서 값을 지정해 주었는데, Embed태그는 어트리뷰트(Attribute)로 값을 지정해 준다.

 

이렇게 해서 테스트 끝!!

결론 : Embed태그를 이용할 수도 있구나!!

Posted by happydong
, |