Correr rgsvr32 en archivos de programa \ miaplicacion parece fallar incluso cuando se ejecuta como administrador

StackOverflow https://stackoverflow.com/questions/3884824

  •  28-09-2019
  •  | 
  •  

Pregunta

Nuestro software tiene que ser capaz de registrar un OCX en tiempo de ejecución. El OCX vive en el directorio de archivos de programa de la aplicación. Me parece que si enciendo manualmente una línea de cmd como administrador y ejecute el comando que todo funciona muy bien, sin embargo si el fuego de nuestra aplicación como administrador y dejar que el intento aplicación para registrar el OCX, falla. También noto que la aplicación es capaz de ejecutar regsvr32 con éxito cuando lo funciono de mi directorio de construcción, presumiblemente porque i poseer el directorio de construcción. Todavía tengo que ejecutar como administrador sin embargo. Alguien tiene alguna idea de lo que podría ir mal?

Gracias, Brian

¿Fue útil?

Solución

La respuesta es, en primer lugar, que soy descuidado, y en segundo lugar que los argumentos de línea de comandos pasado a la necesidad regsvr32 para ser envuelto entre comillas dobles. Nunca se me ocurrió porque escribí mi código de este modo:

string args = "/s " + Path.Combine(MP_xxxx_DIR.FullName, MAP_POINT_OCX) ;

cuando debería haber parecido:

string args = "/s " + "\"" + Path.Combine(MP_xxxx_DIR.FullName, MAP_POINT_OCX) + "\"";

Espero que esto ayude a alguien más:)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top