Página 1 de 1

Detectar instalación de Windows

Publicado: 30 Jun 2013, 20:31
por Jonny
Pongo este tema aquí, porque más bien no tiene que ver con AutoIt. Al menos lo que no sé hacer, no tiene que ver con Autoit (aunque pretendo hacerlo con él).

Resulta, que quiero hacer un pequeño programa en AutoIt, para ponerlo en Windows PE, y que al iniciarse el sistema detecte las instalaciones de Windows del equipo (las que haya en un disco duro, o si hay más de un disco, las que haya en cada disco).

¿Cómo se hace esto?. Hay aplicaciones que lo hacen. Los discos de instalación de Windows, sin ir más lejos; Comprueban si hay una copia de Windows instalada en el equipo, para mostrar la opción de repararla...

Pues algo así quiero hacer yo :)

Se me ha ocurrido, que puede hacerse con sfc.exe, que acabo de encontrar Googleando, con la opción que tiene, para comprobar el sistema de archivos de una copia de Windows instalada. Pero no sé si funcionaría, y si es la mejor manera de hacerlo.

¿Conocéis otra forma mejor?.

A mí en un principio, antes de saber que existe sfc.exe, se me había ocurrido hacerlo comprobando que el/los discos duro(s) del equipo, tuvieran una partición fat, fat32 o NTFS: si la hay, comprobar que exista el directorio "Windows" y que no esté vacío.

Una forma poco efectiva de comprobarlo, pero la única que se me ocurre ;)

Salu2!

Re: Detectar instalación de Windows

Publicado: 01 Jul 2013, 19:20
por Dany
Hola.

El Windows PE va a estar basado en XP,Vista o 7.

Entonces así puedes usar alguno de estas herramientas:

BOOTCFG.exe

BCDEDIT.exe

Re: Detectar instalación de Windows

Publicado: 01 Jul 2013, 21:59
por Jonny
¡Gracias!

Hasta donde sé, Windows PE se basa sólo en Windows Vista, y Windows 7.
¿Se puede hacer una live-CD basada en XP, como las que se pueden hacer con Windows 7?.

Hace tiempo busqué como hacer eso, pero parece más complicado... Vi algo de hacerlo con Bart-PE, pero no me convenció. La live-CD que quiero hacer, la hago con Win7PE_SE, usando un disco de instalación de Windows 7.
Seguro que lleva esas herramientas, voy a hecharles un vistazo a ver que tal.

Quizás tendría que abrir otro hilo para otra duda que tengo... Pero aprovecho este, ya que más o menos la cosa va de lo mismo :)

Como veo que controlas bastante bien esto de las herramientas de Windows: ¿Sabes como podría iniciar manualmente la consola de recuperación de Windows?.

La idea es, con un programa hecho en AutoIt (montado en Windows PE) hacer una interfaz, con una opción para usar la consola de recuperación, y en vez de lanzar la línea de comandos de la consola, hacer una interfaz gráfica que interactúe con ella.
El problema es, que no encuentro el .exe para iniciar la consola de recuperación. Incluso, he bajado una ISO, con los archivos de la consola de recuperación, pero no sé como se ejecutará...

También la he instalado en un XP virtualizado, pero resulta que el XP virtual tiene instalado el SP3 y el CD de Windows xP que tengo tiene SP2. ;)

así, que me sale un mensaje al ejecutar el winnt32 del cD de instalación, con el parámetro /cmdcons, que dice que la versión instalada de Windows, es más reciente...

Curiosamente, aceptando ese mensaje la instalación continúa, pero una vez finalizada y reiniciada la VM, no aparece la consola de recuperación de Windows por ninguna parte en el sistema.

Según varias WEB's que he visto, debería salir en el menú inicio...
Necesitaría que estuviera ahí, y no antes de iniciar Windows, porque así podría ver qué .exe se ejecuta al iniciar la consola de recuperación (viendo el acceso directo, los procesos)...

Thanks.

Salu2!

Re: Detectar instalación de Windows

Publicado: 02 Jul 2013, 06:59
por Dany
No entiendo muy bien lo que quieres hacer, puedes explicarte mejor. Se mas breve porque me confundo. :smt017

Re: Detectar instalación de Windows

Publicado: 02 Jul 2013, 10:30
por Jonny
:)

Quiero hacer un programa en AutoIt, que una vez iniciado Windows PE, muestre entre otras, una opción para digamos, lanzar la consola de recuperación de Windows.

Así, que tengo que saber como ejecutarla manualmente, porque las formas que he visto, son con accesos directos en el menú inicio, desde el CD de instalación de Windows... Pero no he visto que .exe es el que inicia la consola de recuperación.

Salu2!

Re: Detectar instalación de Windows

Publicado: 02 Jul 2013, 19:32
por Jonny
He estado mirando la ayuda de Bootcfg y bcdedit y no veo en la ayuda, que estas herramientas sirvan para detectar una instalación de Windows en el equipo:

BCDedit.exe:
BCDEDIT - Editor del almac‚n de datos de la configuraci¢n de arranque (BCD)

La herramienta de la l¡nea de comandos Bcdedit.exe modifica el almac‚n de datos
de la configuraci¢n de arranque.
El almac‚n de datos de la configuraci¢n de arranque contiene par metros de
configuraci¢n de arranque y controla el modo en que arranca el sistema
operativo.
Estos par metros se encontraban antes en el archivo Boot.ini en sistemas
operativos BIOS o en las entradas RAM no vol til en sistemas operativos basados
en EFI (Extensible Firmware Interface). Puede usar Bcdedit.exe para agregar,
eliminar, editar y anexar entradas en el almac‚n de datos de la configuraci¢n
de arranque.

Para obtener informaci¢n detallada sobre comandos y opciones, escriba
bcdedit.exe /? <comando>. Por ejemplo, para mostrar informaci¢n detallada sobre
el comando /createstore, escriba:

bcdedit.exe /? /createstore

Para obtener una lista alfab‚tica de temas del archivo de ayuda, ejecute
"bcdedit /? TOPICS".

Comandos que operan en un almac‚n
=================================
/createstore Crea un nuevo almac‚n de datos de la configuraci¢n de arranque
vac¡o.
/export Exporta el contenido del almac‚n del sistema a un archivo. Este
archivo se puede usar m s adelante para restaurar el estado del
almac‚n del sistema.
/import Restaura el estado del almac‚n del sistema mediante un archivo
de copia de seguridad creado con el comando /export.
/sysstore Establece el dispositivo de almac‚n del sistema (solo afecta a
los sistemas EFI, pero no se mantiene entre reinicios y solo se
usa en los casos en que el dispositivo de almac‚n del sistema
es ambiguo).

Comandos que operan en entradas de un almac‚n
=============================================
/copy Hace copias de las entradas del almac‚n.
/create Crea nuevas entradas en el almac‚n.
/delete Elimina entradas del almac‚n.
/mirror Crea un reflejo de las entradas del almac‚n.

Ejecute bcdedit /? ID para obtener informaci¢n sobre los identificadores
usados por estos comandos.

Comandos que operan en opciones de entrada
==========================================
/deletevalue Elimina las opciones de entrada del almac‚n.
/set Establece valores de opciones de entrada en el almac‚n.

Ejecute bcdedit /? TYPES para ver una lista de tipos de datos usados por estos
comandos.
Ejecute bcdedit /? FORMATS para ver una lista de formatos de datos v lidos.

Comandos que controlan la salida
================================
/enum Muestra la lista de entradas del almac‚n.
/v Opci¢n de la l¡nea de comandos que muestra identificadores de
entrada completos, en lugar de usar nombres para los
identificadores conocidos.
Use /v por s¡ solo como comando para mostrar los
identificadores de entrada completos para el tipo ACTIVE.

Ejecutar "bcdedit" por s¡ solo equivale a ejecutar "bcdedit /enum ACTIVE".

Comandos que controlan el administrador de arranque
===================================================
/bootsequence Establece la secuencia de arranque £nica para el administrador
de arranque.
/default Establece la entrada predeterminada que usar  el administrador
de arranque.
/displayorder Establece el orden en que el administrador de arranque muestra
el men£ de arranque m£ltiple.
/timeout Establece el valor de tiempo de espera del administrador de
arranque.
/toolsdisplayorder Establece el orden en que el administrador de arranque
muestra el men£ de herramientas.

Comandos que controlan los Servicios de administraci¢n de emergencia para una
=============================================================================
aplicaci¢n de arranque
======================
/bootems Habilita o deshabilita los Servicios de administraci¢n de
emergencia para una aplicaci¢n de arranque.
/ems Habilita o deshabilita los Servicios de administraci¢n de
emergencia para una entrada del sistema operativo.
/emssettings Establece los par metros globales de los Servicios de
administraci¢n de emergencia.

Comandos que controlan la depuraci¢n
====================================
/bootdebug Habilita o deshabilita la depuraci¢n de arranque para una
aplicaci¢n de arranque.
/dbgsettings Establece los par metros globales del depurador.
/debug Habilita o deshabilita la depuraci¢n de kernel para la entrada
de un sistema operativo.
/hypervisorsettings Establece los par metros para el hipervisor.
Bootcfg.exe:
BOOTCFG /par metro [argumentos]

Descripci¢n:
Esta herramienta de la l¡nea de comandos se puede usar para configurar,
consultar, cambiar o eliminar la configuraci¢n de la entrada de arranque
en el archivo BOOT.INI.

Lista de par metros:
/Copy Hace una copia de una entrada de arranque existente

/Delete Elimina una entrada de arranque existente del archivo BOOT.INI.

/Query Muestra las entradas de arranque actuales y su
configuraci¢n.

/Raw Permite al usuario especificar cualquier modificador que
desee agregar.

/Timeout Permite al usuario cambiar el valor Timeout (tiempo de espera).

/Default Permite al usuario cambiar la entrada de arranque
predeterminada.

/EMS Permite al usuario configurar el modificador /redirect
para la compatibilidad desatendida.

/Debug Permite al usuario especificar el puerto y la velocidad en
baudios para la depuraci¢n remota.

/Addsw Permite al usuario agregar modificadores predefinidos.

/Rmsw Permite al usuario quitar los modificadores predefinidos.

/Dbg1394 Permite al usuario configurar el puerto1394 para depuraci¢n.

/? Muestra este mensaje de ayuda.

Ejemplos:
BOOTCFG /Copy /?
BOOTCFG /Delete /?
BOOTCFG /Query /?
BOOTCFG /Raw /?
BOOTCFG /Timeout /?
BOOTCFG /EMS /?
BOOTCFG /Debug /?
BOOTCFG /Addsw /?
BOOTCFG /Rmsw /?
BOOTCFG /Dbg1394 /?
BOOTCFG /Default /?
BOOTCFG /?

Advertencia: BOOT.INI se usa para las opciones de arranque en Windows XP y
sistemas operativos anteriores. Use la herramienta de l¡nea de
comandos BCDEDIT para modificar las opciones de arranque en
Windows Vista.
Salu2!