Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1589
  • Last Modified:

How can I make it so that whenever I view pictures within Microsoft Windows Picture and Fax Viewer, the pictures will always open up Zoomed in twice? (See Screenshot)

How can I make it so that whenever I view pictures within Microsoft Windows Picture and Fax Viewer, the pictures will always open up Zoomed in twice? (See Screenshot).

As you can see in the screenshot, the picture that I am viewing is too small.

Every time I view this type of image, I have to click on the Zoom In icon (the icon that has the magnifying glass with the plus sign) twice so that I am able to view the picture.

How can I make it so that whenever I view pictures within Microsoft Windows Picture and Fax Viewer, the pictures will always open up Zoomed in twice?

I use Microsoft Windows Picture and Fax Viewer in Windows XP Service Pack 3.
Magnify-objects-twice.JPG
0
Knowledgeable
Asked:
Knowledgeable
  • 2
2 Solutions
 
jvuzCommented:
I don't know if it's possible with MS Winsows picture & fax viewer, but with Irfanview (http://www.filehippo.com/download_irfanview/) you can set foto's to be open at full screen. You can do this by: view-display options-fit images to window
0
 
senadCommented:
If there is a tweak then it is under these keys:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer
Where or is it possible at all,I do not know....
0
 
BillDLCommented:
Hi Knowledgeable

The "Windows Picture and Fax Viewer" isn't really a program in the true sense of the word.  It is part of the Windows Explorer "shell", and is what allows you to view folders containing images as a film strip or slideshow directly from within Windows Explorer.  It is also what shows the "Preview" option on the Right-Click menu for images, and it works as a "thumbnail extractor" to show thumbnail images and previews of files in Windows Explorer.

The command that is used to open an image in the Windows Picture and Fax Viewer is:

%SystemRoot%\system32\rundll32.exe %SystemRoot%\system32\shimgvw.dll,ImageView_Fullscreen %1

or abbreviated to just the file names, seeing as each file is in a recognised path that doesn't have to be specified:

rundll32.exe shimgvw.dll,ImageView_Fullscreen %1
or
rundll32 shimgvw,ImageView_Fullscreen %1

RunDLL32.exe calls out the "ImageView_Fullscreen" function from within "shimgvw.dll" and tells it to display the file (that is stored as the full path in the variable %1) within the frame that is the Windows Picture and Fax Viewer.  shimgvw.dll is clearly an abbreviation for Shell Image Viewer.

The only other apparently relevant function in shimgvw.dll that I know of is:

shimgvw,ImageView_COMServer {00E7B358-F65B-4dcf-83DF-CD026B94BFD4}

and this relates to the "Slideshow" AutoPlay Handler for removeable media.

The Windows Registry will retain a "Last State" setting for many things, such as the size and position of program dialogs, application windows, etc.  A lot of these settings are stored in the registry as "Bags", eg in sub-keys of:
[HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\Bags]

As far as I can determine no persistent settings are written to the registry to store the last state of the Windows Picture and Fax Viewer dialog/window.

The "toolbar" at the bottom of the Windows Picture and Fax Viewer, or in a Windows Explorer folder showing in Slideshow mode, is populated using bitmap images from within shimgvw.dll.  Slideshows of images in a folder are run using a JavaScripted HTML resource from within shimgvw.dll.

The only way I can see that you could automatically have the "Zoom In" button clicked once each time an image is opened in the Windows Picture and Fax Viewer would be to create a new "Action" for all image types that runs a VBScript (ie. a *.vbs file) that simulates the click using the Visual Basic "SendKeys" function.  This function requires that the relevant "Accelerator" key or key combination be called while the program window has focus.  In this case, the Virual Key for "Zoom In" is just a "+" key.  The shortcuts keys for the Windows Picture and Fax Viewer are:

"Zoom In (+)"
"Zoom Out (-)"
"Select Annotation"
"Best Fit (Ctrl+B)"
"Actual Size (Ctrl+A)"
"Previous Page (Page Up)"
"Next Page (Page Down)"
"Start Slide Show (F11)"
"Next Image (Right Arrow)"
"Previous Image (Left Arrow)"
"Print (Ctrl+P)"
"Edit Info (Ctrl+I)"
"Copy To (Ctrl+S)"
"Help (F1)"
"Delete (Delete)"
"Closes this program and opens the image for editing (Ctrl+E)"
"Rotate Clockwise (Ctrl+K)"
"Rotate Counterclockwise (Ctrl+L)"

OR

you can use the Alt + x where "x" is the letter of the alphabet that is underlined.  This is symbolised in programming by preceding that letter with a & symbol as below:

"Pre&view" - Alt + V
"Zoom &In" - Alt + I
"Zoom &Out" - Alt + O
"&Actual Size" - Alt + A
"&Best Fit" - Alt + B
"Ne&xt Page" - Alt + X
"Previous Pa&ge" - Alt + G
"Rotate Cloc&kwise" - Alt + K
"Rotate Cou&nter Clockwise" - Alt + N
"&Print" - Alt + P
"&Delete Annotation" - Alt + D
"&Edit Annotation Info" - Alt + E

Take this simple VBScript as an example of sending a shortcut key combination that opens Notepad, simulates clicking on the Format menu (Alt + O) > WordWrap (Alt + W) option (but doesn't actually click to untick it), then closes Notepad (Alt + F4).

' Create the program environment
Set WshShell = WScript.CreateObject("WScript.Shell")
' Open Windows Notepad
WshShell.Run "%SystemRoot%\notepad.exe"
' Give Notepad time to load
WScript.Sleep 500
' Make sure Notepad window is active
WshShell.AppActivate "Notepad"

' Simulate Alt + O keypresses
WshShell.SendKeys "%{O}"
' Slow things down so you can see it working
WScript.Sleep 3000
' Simulate Alt + W keypresses
WshShell.SendKeys "%{W}"
' Slow things down so you can see it working
WScript.Sleep 3000

' Make sure Notepad window is still active
' or else another window may be closed
WshShell.AppActivate "Notepad"
' Close Notepad using Alt + F4
WshShell.SendKeys "%{F4}"

To run the *.vbs file you could just call it like:

wscript //NoLogo test.vbs

OK, so translating this to a command that would open an image in the Windows Picture and Fax Viewer:

' Create the program environment
Set WshShell = WScript.CreateObject("WScript.Shell")

' Open image in Windows Picture and Fax Viewer
WshShell.Run "rundll32.exe shimgvw.dll,ImageView_Fullscreen C:\Images\test.jpg"

' Give window time to load
WScript.Sleep 500

' Make sure window is active
WshShell.AppActivate "Windows Picture and Fax Viewer"
' Simulate + keypress
WshShell.SendKeys "{+}"

This works, but the image file path is hard-coded into the VB Script.  I am sure that we could pass the %1 value as a parameter to the VB Script and therefore enable us to create a new Right-Click menu option to "Open and Zoom" (or similar) in your registry that runs the *.vbs file, but I will first have to refresh my memory on how to pass command line parameters to a VBScript.

If this sounds like an idea you may like to try, then let me know and I will try to figure out a working solution.

Bill
0
 
BillDLCommented:
Thank you Knowledgeable
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now