Carregando e descarregando arquivos ISO no Windows 8

Carregando e descarregando arquivos ISO no Windows 8

Vi em um site que o novo Windows 8 poderia carregar imagens ISO sem a ajuda de outros programas.

  1. O Windows 8 está criando uma nova unidade para cada ISO? Ou possui um drive virtual para carregar todos os ISOs?

  2. Como posso saber se um arquivo é realmente um ISO?

  3. Alguns PCs usam UltraISO para abrir ISOs. Se eu apenas inserir o nome ISO no DOS, ele será carregado no UltraISO. Como posso carregar o ISO apenas no Windows 8 em todos os PCs, tenham UltraISO ou não?

  4. Como posso descarregar ISOs?

Quero fazer tudo isso em um arquivo em lote.

Responder1

O Windows 8 está criando uma nova unidade para cada ISO? Ou possui um drive virtual para carregar todos os ISOs?

Outros já responderam a isso – o Windows criará uma nova unidade virtual para carregar cada ISO que você abrirsimultaneamente. O que isto significa é que o segundo ISO que você carregar (sem ejetar o primeiro) iránãosubstituirá aquele já carregado, mas receberá uma letra de unidade diferente.


Alguns PCs usam UltraISO para abrir ISOs. Se eu apenas inserir o nome ISO no DOS, ele será carregado no UltraISO. Como posso carregar o ISO apenas no Windows 8 em todos os PCs, tenham UltraISO ou não?

Pergunta interessante. Na verdade, tentei explorer.exe Filename.isocom diferentes manipuladores/visualizadores/editores ISO instalados e descobri que, dependendo do nível de integração com o sistema operacional, o comando ignora o programa associado ou não. Ainda estou procurando uma maneira de abrir ISOs de maneira confiávelsempreusando o próprio Windows, independentemente de quaisquer programas associados instalados. Certifique-se de atualizar minha resposta se/quando eu descobrir.


Como posso descarregar ISOs?

Ainda preciso descobrir isso; provavelmente acontecerá em conjunto com a descoberta de um comando de carregamento confiável, conforme mencionado acima.

Enquanto isso, você pode tentar um dos seguintes:

nircmdcCD-ROM aberto [unidade:]

ou

wizmoabrir=[unidade:]


Como posso saber se um arquivo é realmente um ISO?

Estou abordando este último porque, tecnicamente, é o mais difícil de alcançar. Identificar de forma confiável se uma imagem de disco com nome incorreto (ou qualquer arquivo) estána verdadeum ISO ou não é surpreendentemente difícil de fazer. O mais próximo que consegui chegar foi usando oIdentificador de arquivo TrID. Se você baixar a versão Win32 e o pacote TrIDDefs mais recente, extraia-os para a mesma pasta e execute o seguinte comando:

trid -ns -r:1 File.iso

você verá uma saída como esta:

TrID/32 - File Identifier v2.10 - (C) 2003-11 By M.Pontello
Definitions found:  4903
Analyzing...

Collecting data from file: File.iso
 49.4% (.NRG) Nero BurningROM CDImage (2048000/1)

Infelizmente, parece que por algum motivo os ISOs são identificados pelo TrID como "bytes nulos" (se você remover a -nsopção) ou como "Nero BurningROM CDImage" se você especificar a opção. Não sei sobre o primeiro, mas o último é possivelmente porque as imagens de disco NRG são bastante semelhantes às ISOs. Nesse caso, seria difícil (ou talvez até impossível) distinguir entre NRGs mal nomeados e ISOs verdadeiros (embora se o Windows 8 puder carregar NRGs renomeados como ISOs, isso nem importará). Em qualquer caso, o seguinte arquivo em lote imprimirá se um arquivo especificado como argumento é um NRG/ISO ou não:

@echo off
if [%1]==[] goto :EOF
for /f %%v in ('trid -ns -r:1 "%1" ^| find /c "(.NRG)"') do (
    if [%%v]==[0] echo "%1" is not an NRG/ISO & goto :EOF
    echo "%1" is an NRG/ISO
)

Alternativamente, o que você pode fazer é olhar para esse problema na direção oposta. Como o Windows 8 só pode carregar ISOs e VHDs, seria uma suposição bastante razoável fazer com que qualquer arquivonãocarregado não cabe na conta. Assim, o que você poderia fazer é tentar carregar o suposto ISO (comando para isso ainda pendente, é claro), e então procurar por um arquivo conhecido em todas as unidades de disco (realevirtual, pois não sei distinguir entre os dois). Desde que um arquivo com o mesmo nome não exista em um disco real que foi inserido ao mesmo tempo, se a pesquisa do arquivo for bem-sucedida, você poderá concluir que o ISO foi carregado com sucesso e, portanto, é um ISO verdadeiro ou um nome incorreto. VHD. O código para pesquisar um arquivo específico em todas as unidades de disco pode ser encontrado em minha respostaaqui. (Ufa, espero que faça sentido!)


Por fim, gostaria de dizer que, como provavelmente existem novas APIs no Windows 8 para carregar/ejetar ISOs e elas podem ser expostas via .NET/PowerShell, pode ser mais fácil realizar tudo o que você deseja via PowerShell. Não posso ajudá-lo, pois não espero PS, mas você definitivamente deveria investigar se o uso de arquivos em lote não for uma necessidade absoluta.

Responder2

O Windows 8 está criando uma nova unidade para cada ISO? Ou tem uma unidade falsa para carregar todos os ISOS?

Sim, o Windows 8 criará uma unidade virtual para cada arquivo ISO, mas somente se você tentar abrir mais de um arquivo ISO ao mesmo tempo.

insira a descrição da imagem aqui

Como posso saber se um arquivo é realmente um ISO por dentro?

Basta clicar com o botão direito na imagem e selecionar as propriedades que você verá o tipo de arquivo. Ou tem um ícone padrão no Windows 8.

insira a descrição da imagem aqui

Alguns PCs usam UltraISO para abrir ISOs. Se eu apenas inserir o nome ISO no DOS, ele será carregado no UltraISO. Como posso carregar o ISO apenas no Windows 8 em todos os PCs, tenham UltraISO ou não?

Sim, você pode abri-lo usando oAbrir comopção ou defina o programa padrão para ela.

insira a descrição da imagem aqui

Como posso descarregar ISOs?

Basta clicar com o botão direito e selecionar a opçãoEjetar.

insira a descrição da imagem aqui

Editar: Você pode iniciar o ISOfogo através da linha de comando, basta digitar o comando como abaixo

 C:\>explorer.exe D:\DiskImage\imagefile.iso

Observação: Aqui D:\diskimage\imagefile.isoestá o caminho do ISOarquivo que você deve alterar com o seu caminho.

Agora você verá que ISOa imagem está montada no explorere você pode vê-la na seção "Meu Computador". Se quiser mais de um ISOao mesmo tempo, você pode executar o mesmo comando com o nome do arquivo de imagem desejado para abri-lo.

Agora, se você deseja desmontar a ISOlinha de comando do formulário de imagem, digite o seguinte comando e pressione Enter:

c:\>powershell dismount-diskimage -devicepath \\.\D:

aqui D:está se referindo à letra da unidade da sua unidade virtual, ela pode ser diferente de acordo com as letras da sua partição.

Mais uma edição: Depois de pesquisar um pouco mais no Google, encontrei o tópico sobre SU por@r.tanner.fque encontram o caminho para montar os vários ISOs através do power-shell. Ele superou isso depois de ler este tópico.

Responder3

O Windows 8 está criando uma nova unidade para cada ISO? Ou tem uma unidade falsa para carregar todos os ISOS?

Quando você abre um ISO com o Windows Explorer pela primeira vez, ele cria automaticamente um novo drive virtual para ele ('monta'). Se você abrir vários ISOs, terá vários drives virtuais.

Como posso saber se um arquivo é realmente um ISO por dentro?

Não tenho certeza se estou entendendo. Ele aparece como uma unidade virtual de CD/DVD. Você pode verificar as propriedades da unidade para o sistema de arquivos usado, suponho.

Alguns PCs usam UltraISO para abrir ISOs. Se eu apenas inserir o nome ISO no DOS, ele será carregado no UltraISO. Como posso carregar o ISO apenas no Windows 8 em todos os PCs, tenham UltraISO ou não?

Você pode executar explorer YourISOName.isoa partir de um prompt de comando para abrir o ISO no Windows Explorer. Se ainda não estiver montado, estará, e você será levado até lá no Explorer.

Como posso descarregar ISOs?

No Explorer, você pode clicar com o botão direito e “ejetá-los”, como qualquer outro tipo de unidade externa no Windows.

Responder4

Acontece que é assim que você pode permitir nativamente que o Windows/explorer monte/desmonte imagens iso, independentemente da associação do tipo de conteúdo.

Montando uma imagem:

$ powershell Mount-DiskImage -ImagePath d:\path\to\image.iso

Desmontando ou Desmontando se preferir:

$ powershell DisMount-DiskImage -ImagePath d:\path\to\image.iso 

nAlegria!

informação relacionada