This is one of those not so technical tip but certainly the one we need when it comes to talk to Sun Support or creating a documentation. yes, its taking screenshots in Sun Solaris Operating Environment using CDE. Sun Solaris X utilities uses “xwd“, an application that is standard among the X utilities can be used to take screenshots.
xwd dumps the output of a window into a file that can be viewed with xwud, or converted with convert (part of ImageMagick package), xv or another tool to a more usable image type, like png.
There are also more convenient tools to make a Screenshot. You should use more reliable import (part of ImageMagick package) instead of xwd.
To Take Screenshot of a Frame
When logged onto the CDE, open a terminal session and run the command as follows:
sunsolaris# xwd -frame > screenshot.xwd
This will prompt you to select a window (the cursor becomes a +), then it will take a picture of the window (as it appears on the screen), the “-frame” options will have it also include the window managers decorative borders, then the file is converted to png.
A full screen screenshot can be done without any frame being set
sunsolaris# xwd -root > screenshot.xwd
Screenshot and Convert togethor
sunsolaris# xwd -frame | convert xwd:- screenshot.png
Screenshot after “n” seconds
Now, comes the interesting bit, you can take screenshots after a delay time (say 10 seconds). All you do is to use a sleep command as follows
sunsolaris# sleep 10; xwd -root -out screenshot.xwd
To print the image captured using Laserjet
xpr -device ljet /tmp/myimage | lp -d printer
where “printer” is the installed printer.
This file can now be converted to PNG, JPG,GIF using GIMP or any other image editing software.
2 thoughts on “Howto Take Screenshots in Solaris 7/8/9/10 (CDE)”
Looking for a way to switch users using CDE in a way that the first user doesn’t have to log out.
In other words… can switch all of user 1’s processes to user 2, but then I need a way to let CDE know about the switch. Any one?
I believe you can’t “switch user” unless you can start another X instance. You could ssh/rsh to localhost as a different user with X forwarding, that takes care of most needs. Xnest/Xvnc can be handy for full sessions.
Systems with virtual consoles like Linux can start another X on another vc on certain setups, for example.