2011-04-12 5 views
4

나는 정상적인 Windows 바탕 화면 아이콘을 내 프로그램을 시작할 수있는 "활성 데스크톱"html 페이지로 대체하고 링크를 통해 디렉토리와 파일을 열어 놓을 수 있다고 생각 해왔다. 이것은 데스크톱을 사용자 정의하는 정말 멋진 방법입니다.액티브 데스크톱 웹 사이트에서 프로그램을여시겠습니까?

"file : //"protocal을 사용하는 것이 첫 번째 방법이지만 올바르게 작동하지 않습니다. another SO Post에서 나는 this link를 발견했다. 그러나 그것들은 나의 머리 위에 조금있다. 이것이 올바른 접근 방법입니까?

나는 이것을 처음으로 생각할 수 없다. 그것은 좋은 생각처럼 보인다 (아니오?). 너 모두 어떻게 생각하니?

+0

제 답변으로 그 문제가 해결 되었습니까? 그렇다면. 최종 결과를보고 싶습니다. 계속 나를 게시 할 수 있습니까? –

+0

Jason에게 감사드립니다! 불행히도 일부 프리랜서 작업이 나왔을 때 프로젝트는 일시적으로 backburner에 걸렸지 만 아직 끝났으며 결과는 –

+0

과 같이 다시 게시됩니다 ... 나는 결코 그 프로젝트에 참여하지 않았으며 약간의 시간은 지금 축 늘어진다. 내가 생각하는 여전히 예쁜 생각 ;-) –

답변

2

저는 데스크탑 사용자 정의를위한 활성 데스크탑이라는 아이디어를 좋아합니다. 할 수있는 일은 자신의 스키마를 등록하는 것입니다.

레지스트리 항목을 추가하십시오. 다음은 내가 작업 한 첫 번째 예입니다.

.reg 파일에 추가하고 레지스트리로 가져 오기. 당신이

<a href="myschema://Whatever+i+want" >Click Here</a> 

컴퓨터는 HREF와 MYSCHEMA 응용 프로그램을 열 하이퍼 링크를 만드는 경우
변경 "MYSCHEMA"및 실행 파일의 위치는

Windows Registry Editor Version 5.00 

[HKEY_CLASSES_ROOT\myschema] 
@="URL:My Schema Protocol" 
"URL Protocol"="" 

[HKEY_CLASSES_ROOT\myschema\DefaultIcon] 
@="C:\\Program Files\\MySchemaProgram\\MySchema.exe,1" 

[HKEY_CLASSES_ROOT\myschema\shell] 

[HKEY_CLASSES_ROOT\myschema\shell\open] 

[HKEY_CLASSES_ROOT\myschema\shell\open\command] 
@="\"C:\\Program Files\\MySchemaProgram\\MySchema.exe\" \"%1\"" 

이제 자신의 필요에 맞게 명령 줄에서. Ervironment.CommandLine이 UTF 당신은 또한에서 ShellExecute에서이 스키마를 사용할 수 있으므로

//This Link 
<a href="myschema://Something%20Here">Click Here</a> 

//Will Result in This Command Line Execution. 
"C:\Program Files\MySchemaProgram\MySchema.exe" myschema://Something Here 

를 디코딩 실행 대화뿐만 아니라 명령되기 때문에

은 염두에.

다음은 처음 사용했던 프로그램 예입니다. 당신은 당신의 응용 프로그램과 행운을 빕니다

using System; 
using System.Collections.Generic; 
using System.Text; 

namespace Alert 
{ 
    class Program 
    { 
    static string ProcessInput(string s) 
    { 
     // TODO Verify and validate the input 
     // string as appropriate for your application. 
     return s; 
    } 

    static void Main(string[] args) 
    { 
     Console.WriteLine("Alert.exe invoked with the following parameters.\r\n"); 
     Console.WriteLine("Raw command-line: \n\t" + Environment.CommandLine); 

     Console.WriteLine("\n\nArguments:\n"); 
     foreach (string s in args) 
     { 
     Console.WriteLine("\t" + ProcessInput(s)); 
     } 
     Console.WriteLine("\nPress any key to continue..."); 
     Console.ReadKey(); 
    } 
    } 
} 

꽤 빠른 아이디어를 얻을 수 있어야합니다. 나는 그것이 완성되었을 때 그것을보고 싶어 할 것이다.

EDIT : 멋진 기능이며 더 많은 사람들이이 기술을 원하는대로 사용할 수 있기 때문에 일부 일치하는 문자열을 추가합니다.이 항목은 내가 찾은 것입니다. 실패한 사람) 더 이상 생각하는 사람이 있으면 알려주세요.

사용자 정의 URL/URI 핸들러
사용자 정의 스키마 프로그램
레지스트리 웹 주소를 프로그램
핸들 웹 링크 URL에서
앱 실행 나는 시도하지 않은 비록 내가 (정말 흥미로운 결과를 얻었다

1

나는 당신이 잠시 물었던 것을 조사하고 잘 작동하는 것을 찾지 못했습니다.

궁극적으로 목표가 데스크톱의 완전한 사용자 설정이라면, http://rainmeter.net/RainCMS/http://kaelri.deviantart.com/art/Enigma-103823591 같은 것을 연구함으로써 비슷한 결과를 얻을 수 있다고 생각합니다. Lifehacker는 모든 것을 실행하는 방법에 대한 링크/튜토리얼을 많이 가지고 있습니다. 데스크톱에서 HTML을 사용하여 내 목표를 훨씬 뛰어 넘는 데스크톱을 실행할 수있었습니다.

1

한 가지 방법 그것은 수년 동안이었고 지금도 여전히 현대 OS와 현대 플래시 플레이어에서 작동한다는 것을 확인할 수 없다)는 내가 만든 사용자 인터페이스가 포함 된 플래시 SWF 파일을 실행하는 활성 데스크톱 페이지를 사용하는 것이 었습니다. 그것을 사용하여) swf에서 프로그램을 시작할 수 있습니다.

1

나는 각 데스크톱이 플래시 앱을 실행하는 활성 데스크톱을 통해 제어되는 사이버 카페에서 설정을 실행했습니다. 시작과 종료 작업은 파이썬으로 작성된 미니 웹 서버로 처리되었습니다. OS는 XP였습니다.

내 경험으로 액티브 데스크톱이 신뢰할 수 없다는 것이 었습니다. 그것은 메모리를 끔찍하게 누설하고 정기적으로 충돌합니다. 그들은 이후 버전에서 수정했을 수도 있지만, 어쨌든 그것을 사용하기 때문에 많은 노력이 명백한 박편 현상을 수정하는 데 의심 스럽습니다.