¿Cómo funciona llamar a un programa en Windows XP desde "Ejecutar..." con un argumento de dos puntos?

¿Cómo funciona llamar a un programa en Windows XP desde "Ejecutar..." con un argumento de dos puntos?

Noté que cierto programa funciona de manera especial al enviar un argumento.

La única forma de enviar un argumento es haciendo clic en "Inicio -> Ejecutar..." y escribiendo:

[programname]:[argument]

por ejemplo (que de todos modos no funciona)

notepad:textfile.txt 

Si intento hacer lo mismo desde una ventana de línea de comandos, no funciona. Tampoco lo hace el "argumento del nombre del programa". Debo poder abrir el programa con un argumento de un sitio web (con Wscript Shell, que es otra historia), pero probablemente esto no funcione.

¿Alguien tiene idea de cómo funciona esta extraña sintaxis de dos puntos?

ACTUALIZACIÓN: Según lo solicitado, aquí hay un ejemplo real:

AGS:pref.serv01.com(ARG1:ARG2)

Esa es la sintaxis exacta, lo que hace que el programa abra la información específica para ARG1 y ARG2. AGS es sólo el nombre del programa que es un programa normal de Windows.

Respuesta1

ElCorrer...El diálogo no se limita a archivos locales: también acepta todos los esquemas de URI 1 registradoen el sistema Por ejemplo, puede abrir http:o ftp:direcciones en él. Es posible que algún programa simplemente haya registrado el AGS:esquema URI para este propósito. (El URI completo se pasa sin modificar al programa, que puede aplicar sus propias reglas de análisis).

Eche un vistazo a la HKEY_CLASSES_ROOT\AGSclave en el Editor del Registro y vea si dice algo sobre su programa, si tiene un valor llamado " URL Protocol" y shell\open\commanda qué apunta la subclave.


1 Windows los llama "protocolos URL", lo cual no es del todo correcto.

Respuesta2

El carácter de dos puntos se utiliza para referirse aFlujos de datos alternativosen NTFS. Tal vez su programa tenga flujos de datos ocultos con ejecutables.

Creo que no se puede hacer desde el argumento de la línea de comando porque el analizador del shell se confunde. Sin embargo, el cuadro de diálogo "ejecutar" es mucho más permisivo.

Si es así, puedes intentar extraerlo simplemente:

c:> type program:argument > output

información relacionada