2010-04-29 4 views
6

상황 별 메뉴를 사용하는 대신 프로그래밍 방식으로 브라우저 외부 Silverlight 4 응용 프로그램을 제거하는 방법 (예 : 상황에 맞는 메뉴를 바꾸려면)?브라우저 외부에서 Silverlight 응용 프로그램을 프로그래밍 방식으로 제거하십시오.

편집 내가 명령 행 호출하여 제거하는 방법 "Installing Silverlight applications without the browser involved"에서 발견

:

"%의 ProgramFiles % \ 마이크로 소프트 실버 라이트 \의 sllauncher.exe"/ 제거/원산지 : 실버

- : .NET/내용/샘플/앱/...

을 사용할 수 있습니다

더 좋은 해결책이 있습니까?

+0

http://timheuer.com/blog/archive/2010/03/25/에서 찾았습니다. 사용-sllauncher-에 대해 침묵하는 것은 설치 - 실버 - application.aspx 명령 줄을 호출하여 제거하는 방법을 : "%의 ProgramFiles % \ 마이크로 소프트 실버 라이트 \ sllauncher.exe" /제거 /원산지 : HTTP ://www.silverlight.net/content/samples/apps/facebookclient/ClientBin/Silverface.xap 에서 사용할 수 있습니다. dynamic cmd = AutomationFactory.CreateObject ("WScript.Shell"); cmd.Run (run, 1, true); 더 좋은 해결책이 있습니까? –

+0

질문 수정 기능을 사용하여 의견이 아닌 추가 정보를 포함하십시오. – AnthonyWJones

+3

Mac에서 그렇게하는 방법이 궁금합니다. 어 ... SL의 다섯 번째 버전에서조차도, 브라우저의 일부는 너무 못 생겼습니다. 이미 브라우저에 앱이 설치되어있는 경우 앱에서 직접 호출 할 수없는 이유는 무엇입니까? 왜 코드에서 제거 할 수 없습니까? CheckAndDownloadUpdateAsync()가 항상 작동하지 않는 이유 ... – Agzam

답변

1

이 마이크가 말한대로부터 좋은 생각이 있다면 또한 내가 질문 것, 상호 운용성 COM에 의존하지 않고 수 없습니다 꽤 특정 :

1) 제거 옵션을 제거 것입니다 의심의 여지 많은 사용자를 괴롭 히고 나쁜 습관입니다. 2) 새로운 컨텍스트 메뉴를 구현하려고한다고하겠습니다. LOB 응용 프로그램이 아니라면 많은 사용자가 웹 응용 프로그램의 상황에 맞는 메뉴에 액세스하는 데 익숙하지 않아 조심 스러울 것입니다. LOB 응용 프로그램 인 경우 프로그램 추가/제거가 OK 솔루션일까요?

+0

설치 버튼을 설치하고 제거 할 수도 있습니다 (필자의 경우). 마우스 오른쪽 버튼 클릭 메뉴를 교체하는 것은 나에게도 유용했지만 매우 진보 된 것들을 넣는 것이 좋았지 만 제거 명령을 잃으면 그 해결책을 잊어 버리게되었습니다. – jv42

1

내가 언급 한 해결책은 내가 알고있는 유일한 방법입니다. 당신이 제거를 한 후에도 응용 프로그램이 계속 실행되기 때문에 좋은 소식이라면 Application.Current.MainWindow.Close();을 입력하십시오.

마크

1

이것은 답변이 아니지만 문제와 관련이 있습니다. 공식 Silverlight 위시리스트에서 나는 꽤 오래 전에이 작업을 할 수있는 기능을 추가했습니다. 다행히도 사용자는 거의 동의하지 않습니다. 충분한 표를 얻으면, 실버 라이트의 차기 버전에 나타납니다.

http://dotnet.uservoice.com/forums/4325-silverlight-feature-suggestions/suggestions/410706-greater-control-over-installation-in-oob

0

여기에 체크 아웃 내 솔루션을 : Unable to Uninstall SIlverlight Out Of Browser Application Programatically 나는 그것을 제거 된 Silverlight 응용 프로그램에 의해 실행 된 콘솔 응용 프로그램에서의 코드를 사용했다. Silverlight는 EXE 파일을 디렉터리 중 하나에 대한 리소스로 추출한 후 다음과 같이 사용하여 실행했습니다.

using (dynamic shell = AutomationFactory.CreateObject("WScript.Shell")) 
{ 
    shell.Run(@"C:\Users\yourusername\AppData\update.exe xapNameToUninstall"); 
} 
관련 문제