windows url protocols custom-url-protocol

¿Cómo registro un protocolo de URL personalizado en Windows?



protocols custom-url-protocol (3)

  1. Vaya a Start luego en Find escriba regedit -> debería abrir Registry editor

  2. Haga clic con el botón derecho del mouse en HKEY_CLASSES_ROOT luego en New -> Key

  1. En la Clave, ingrese el nombre en minúsculas con el que desea que se llamen las urls (en mi caso será testus://sdfsdfsdf ) y luego haga clic con el Mouse derecho en testus -> luego New -> String Value y agregue el URL protocol sin valor.

  1. A continuación, agregue más entradas como lo hizo con el protocolo ( Right Mouse New -> Key ) y cree una jerarquía como testus -> shell -> open -> y dentro del command change (Default) a la ruta donde .exe desea iniciar, si desea pasar parámetros a su exe, ajuste la ruta de acceso a exe en "" y agregue "%1" para que se vea como: "c:/testing/test.exe" "%1"

  1. Para probar si funciona ve a Internet Explorer (no Chrome o Firefox ) y testus:have_you_seen_this_man esto debería disparar tu .exe (darte algunas indicaciones de que quieres hacer esto - diga Sí) y pasar a args testus://have_you_seen_this_man .

Aquí hay una aplicación de consola de muestra para probar:

using System; namespace Testing { class Program { static void Main(string[] args) { if (args!= null && args.Length > 0) Console.WriteLine(args[0]); Console.ReadKey(); } } }

Espero que esto te ahorre algo de tiempo.

¿Cómo registro un protocolo personalizado con Windows para que al hacer clic en un enlace en un correo electrónico o en una página web, se abra mi aplicación y se le pasen los parámetros de la URL?



El enlace de MSDN es bueno, pero la información de seguridad no está completa. El registro del controlador debe contener "% 1", no% 1. Esta es una medida de seguridad, debido a que algunas fuentes de URL decodifican% 20 incorrectamente antes de invocar el controlador de protocolo personalizado.

PD. Obtendrá la URL completa, no solo los parámetros de URL. Pero la URL puede estar sujeta a algunos malos tratos, además de la ya mencionada conversión de espacio% 20->. Ayuda a ser conservador en el diseño de sintaxis de su URL. No arroje al azar // o se meterá en el lío de ese archivo: // es.