No hace falta enlazar a InstallShield, hay muchísimos procedimientos que se pueden hacer en batch invocando:
Código: Seleccionar todo
rundll32 <nombre_de_la_libreria>, <nombre_de_la_funcion>, <argumentos>
Links para todo curioso incurable:
1-
[Enlace externo eliminado para invitados]
2-
[Enlace externo eliminado para invitados]
3-
[Enlace externo eliminado para invitados]
y así miles.. todos los encontré con la query 'rundll batch' en google...
Porqué te doy esta información? porque los cuadros de dialogo 'abrir/guardar/guardar como' (y otros varios) están encapsulados en comdlg32.dll, y se ponen a disposicion del programador con comdlg32.ocx, que es puente a la anterior libreria mencionada.
Se que en batch se usan variables, lo que no se es si se pueden cargar con el resultado de la invocacion a rundll. Si se pudiera, solo tendrias que llamar a la funcion adecuada dentro de comdlg32.dll, porque devuelven una cadena que representa el archivo o la carpeta que se seleccionó.