Active Desktop Сайт для открытия программ? - PullRequest
4 голосов
/ 12 апреля 2011

Я всегда думал, что замену обычных значков на рабочем столе Windows HTML-страницей «активный рабочий стол», которая может запускать мои программы, а также открывать каталоги и файлы по ссылкам.Это был бы действительно крутой способ настройки рабочего стола.

Использование протокола "file: //" было моим первым подходом, но это не работает правильно.В еще одном SO Post я нашел эту ссылку , но немного над моей головой.Это правильный подход?

Я не могу себе представить, что я первый, кто рассмотрит это;это кажется хорошей идеей (нет?).Что вы все думаете?

Ответы [ 4 ]

2 голосов
/ 22 апреля 2011

Мне нравится идея активного рабочего стола для настройки рабочего стола. Что вы можете сделать, это зарегистрировать свою собственную схему

Добавить запись в реестре. Вот первый пример, с которым я работал.

Добавьте это в файл .reg и импортируйте в реестр.
Измените "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\""

Теперь, если вы создадите гиперссылку

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

Ваш компьютер откроет приложение MySchema с помощью href в командной строке.

просто будьте внимательны, потому что Ervironment.CommandLine будет UTF-декодированным, поэтому

//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

Эту схему также можно использовать в командах ShellExecute и в диалоговом окне «Выполнить».

Вот пример программы, с которой я начинал. Вы должны быть в состоянии понять идею довольно быстро

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();
    }
  }
}

удачи в вашем приложении. Я хотел бы увидеть его, когда он будет готов.

РЕДАКТИРОВАТЬ: Я добавляю несколько подходящих строк для этого, так как это крутая функция, и больше людей, возможно, захотят использовать эту технику для чего-то, что они хотели сделать .. Это то, что я искал для этого под, (безуспешно) Дайте мне знать, если кто-нибудь еще подумает.

пользовательский обработчик url ​​/ uri
пользовательская схема программы
программа веб-адреса реестра
обращаться к веб-ссылке
запустить приложение с URL

1 голос
/ 28 апреля 2011

Я запустил установку в интернет-кафе, где каждый рабочий стол контролировался через активный рабочий стол с запущенным приложением flash.Операции запуска и завершения выполнялись с помощью мини-веб-сервера, написанного на python.Операционная система была XP.

По моим наблюдениям, Active Desktop ненадежен.Он ужасно пропускает память и регулярно вылетает.Возможно, они исправили это в более поздних версиях, но так как вряд ли его используют, я сомневаюсь, что много усилий было приложено для исправления очевидной ошибки.

1 голос
/ 27 апреля 2011

Одним из способов получить действительно интересные результаты (хотя я не пробовал его годами и не могу сейчас подтвердить, что он все еще работает на современной ОС и современном флеш-плеере) было использование активной страницы рабочего стола, на которойFlash SWF-файл, который содержал пользовательский интерфейс, который я создал и (во время его использования) мог запускать программы из SWF.

1 голос
/ 22 апреля 2011

Я изучил то, что вы спрашивали некоторое время назад, и не нашел ничего, что хорошо работало.

В конечном итоге, если целью является полная настройка вашего рабочего стола, я думаю, что вы можете получить аналогичный результат,исследуя что-то вроде этого: http://rainmeter.net/RainCMS/ и http://kaelri.deviantart.com/art/Enigma-103823591 Lifehacker имеет множество ссылок / учебных пособий о том, как все это запустить.Я смог запустить рабочий стол, который намного превысил мои цели, с помощью HTML на рабочем столе.

...