¿Qué significan realmente estas cadenas crípticas en las asociaciones de registro?

9

Mirando mi HKEY_CLASSES_ROOT \ Word.Document.12 \ shell \ Open \ command \ command value (asociación de shell 'Open' de Word 2010) veo este tipo de tonterías:

xb'BV5 !!!!!!!!! MKKSkWORDFiles> bi $ T! V! 0Z = {Pk0vm ~ AZu / n "% 1"

donde todo está claro sobre las últimas / n partes "% 1", pero la primera críptica aparentemente denota algunas instrucciones mágicas sobre cómo ejecutar MS Word. El mismo vudú que tengo para Excel y otras asociaciones de Office.

Mis numerosos intentos de educarme a través de Internet sobre lo que está sucediendo allí no arrojaron ningún resultado. Mucha gente discute los "encantamientos correctos" para establecer que las asociaciones de Word / Excel funcionen correctamente, sin embargo, no vi que ninguno de ellos (como yo también) entendiera lo que están haciendo y por qué realmente pensaron que esta magia negra funcionaría. para otras personas, solo porque de alguna manera logró trabajar en sus máquinas.

Sin embargo, lo que realmente no entendí es el hecho de que nadie (a quien veo en Internet, por supuesto) nunca preguntó algo como "¿cómo funciona?" o "¿qué significa realmente?" o al menos no el último, "¿crees que tengo un virus desagradable?". Ok, entonces seré el primero, supongo.

Sin embargo, mi pregunta aquí no es por qué la gente es tan incuria. Mi pregunta es ¿cómo funcionan realmente estas cadenas en las asociaciones de registro? Esa debe ser una característica indocumentada (o documentada) de Windows (presumiblemente, Windows Shell) que transforma esas cadenas en algo digerible por el ser humano.

Van Jone
fuente

Respuestas:

6

Estás lidiando con el problema " API no documentada ".

Esa cadena es una cadena secreta, específica de implementación, que Microsoft no quiere como conocimiento público. Si el formato de la cadena era público y Microsoft alguna vez quiso cambiar la forma en que cargaba los archivos, aún necesitarían admitir la cadena antigua para la compatibilidad con versiones anteriores, si es una API indocumentada, se les permite cambiarla sin pasar por el problema de verificar si las cosas de terceros se rompen.

Microsoft es en realidad una de las mejores compañías que existen cuando se trata de tener cuidado de no romper el software de terceros, lanzar el comando word run es solo uno de los lugares donde no quieren pasar por el problema.

Scott Chamberlain
fuente
1
Desafortunadamente, esta respuesta trata sobre preguntas totalmente diferentes: a) ¿Qué significa "API no documentada"? b) ¿Por qué existen las API no documentadas? c) ¿Qué compañía protege mejor nuestras vidas para que nosotros, usuarios estúpidos, no nos peguemos un tiro? :-) Es todavía muy lejos de respuesta " cómo hacer estas cadenas realmente el trabajo de las asociaciones de registro?" Si estuviera listo para aceptar la línea "Se supone que no debo saber", no lo preguntaría aquí en SuperUser ...
Van Jone
1
@VanJone Lo que pasa es que nadie lo sabe, nadie se ha tomado el tiempo de aplicar ingeniería inversa al programa y resolverlo, especialmente cuando la próxima actualización de Windows podría hacer que lo que ya no funcionara.
Scott Chamberlain
1
La gente invierte Windows con bastante frecuencia y muchos pueden poseer este conocimiento como efecto secundario de ganar su salario. Es solo una cuestión de suerte cuánto tiempo esperar a que alguien con el conocimiento adecuado aparezca aquí.
Van Jone
La notación PS '@' no funcionó para mí por alguna razón: SU simplemente lo eliminó de mi comentario
Van Jone
@VanJone No necesita usar @ cuando responde al autor de una publicación, se les notificará automáticamente, @ es para cambiar la notificación del autor de la publicación a alguien que ha publicado al menos una vez en los comentarios.
Scott Chamberlain