No Windows XP, a única maneira que encontrei de abrir mais de 2 janelas do Visualizador de imagens e fax é abrir uma imagem em uma janela, abrir a caixa de diálogo de impressão e, em seguida, abrir as subsequentes. Abrir uma imagem com uma janela do Visualizador de Imagens e Fax já existente simplesmente substitui esta imagem da janela pela nova.
Portanto, para obter a funcionalidade desejada, pelo que sei, existem dois caminhos a seguir:
1) Altere shimgvw.dll para impedir que ele procure se uma janela já está aberta, para que ele apenas abra outra (como acontece quando uma janela está bloqueada com a caixa de diálogo de impressão aberta).
2) Encontre uma maneira de criar um script solicitando ao usuário o primeiro arquivo que ele deseja abrir, abrindo a imagem e instruindo shimgvw.dll para carregar a caixa de diálogo de impressão dessa janela, perguntando sobre o segundo arquivo e repita.
Tentei descompilar shimgvw.dll, mas não sou muito bom em assembler.
Também descobri que esta DLLpoderiatem uma interface COM (http://xpdll.nirsoft.net/shimgvw_dll.html), mas não tenho certeza do que posso invocar com isso.
Há também uma sintaxe curiosa rundll32.exe %windir%\shimgvw.dll,ImageView_Fullscreen %1,ImageView_PrintTo /pt "%1" "%2"
ligeiramente modificada dehttp://ask-leo.com/comments_003254.php?page=6, mas isso aparentemente não abre/faz nada, apesar do que eu acho que parece (abre% 1 e, em seguida, invoca a caixa de diálogo de impressão no contexto dessa janela)