Customizing Microsoft Windows
Right now, this tutorial may have multiple versions. This was done to be able to get some information quickly posted, so such information could be publicly accessible. There may be some duplication between the versions. (Further clean-up is desirable, and may occur when an opportune time is recognized.)
This is a page about using Microsoft Windows. For some other operating systems, you may wish to check out: Installing [Some] Common Software and/or Installing More Software.
Version 2
Note: Version 2 was based on some notes that were taken when a new computer system was obtained. This may closely resemble an actual series of steps taken, which tended to have some of the most annoying needs addressed early on. After the system was set up, some adjustments were made (moving some steps earlier in the process, especially anti-virus software which had been skipped due to not having instructions being quite as convenient to hunt down, but such information has since become more conveniently referenced). These instructions represent the process that is probably going to be tried next.
At the moment, this may also include some extra/spare notes that should probably be moved elsewhere.
There may be a version 3 that simply strives to clean this up a bit... or perhaps the next version will try to genericize the process a bit so that many of the steps look identical for other operating systems.
- Misc Notes
-
- http://blog.lukesampson.com/busybox-for-windows has a comment section which mentions globbing and suggests version 1.19 of BusyBox
-
http://scoop.sh
suggests using
withSet-ExecutionPolicy
-scope
... - If you're looking for a similar thing for Unix, you might want to check out some resources from the multi-server project, especially installing more software.
- Determine if key/main input devices work (keyboard, rodent)
- Log in, if needed
- Verify if Administrator
- (unless operating system was just installed, in which case it is presumed to be an administrator.)
- Determine if I am using the login account that I want to be using.
- Get to a command prompt.
-
For someone quite familiar with the command prompt, this can enable a feeling of quite a bit more comfort, rather than being stuck with using a GUI that has been known to impose changes on users when new versions come out.
- Be able to log on as an Administrator
-
If I am logged in with an account that is an Administrator, but I wasn't given the password to this account, then retain Administrator access by creating a new account and making sure that account is part of the local system's Administrators group.
-
adding accounts
should eventually have info. Meanwhile, here is a command:
net
user
* /ADDAcctName
- Seeing who is in a group/Listing what user accounts are in a group shows an example of the local group named Administrators
-
Generic section: Adding a user to one or more groups includes the more specific section:
Adding one or more account(s) to the local groups in Microsoft Windows. Namely:
net
localgroup Administratorsnet
localgroup Administrators
/ADDAcctName
net
localgroup Administrators
-
adding accounts
should eventually have info. Meanwhile, here is a command:
- Determine if network access is functioning.
-
(Can
an Internet site? If not, may be okay. Does usingping
on an intranet site work? (If so, that may indicate sufficient communication to join centralized authentication.)ping
- Check power settings
-
- Disable Auto Sleep/Hibernation
-
Disable any automatic “Sleep Mode”/“hibernation” functionality if this system needs remote work done on it (to continue an initial setup). For some computers, there may be a desire to never re-enable Sleep Mode if the system should be readily usable from remote locations.
This shows changing which power scheme is being used:
C:\>
PowerCfg
/LIST
Existing Power Schemes (* Active)
-----------------------------------
Power Scheme GUID: 381b4222-f694-41f0-9685-ff5bb260df2e (Balanced) *
Power Scheme GUID: 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c (High performance)
Power Scheme GUID: a1841308-3541-4fab-bc81-f71556f20b4a (Power saver)
C:\>
PowerCfg
/GETACTIVESCHEMEPower Scheme GUID: 381b4222-f694-41f0-9685-ff5bb260df2e (Balanced)
C:\>
PowerCfg
/SETACTIVE 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635cNote: Some OEM computers may come with their own scheme, such as “
”“8759706d-706b-4c22-b2ec-f91e1ef6ed38 (HP Optimized (recommen
” in addition to the three shown above, or “ded)) *
” (alongside Balanced, and instead of the “Power Saver” or “High performance” schemes commonly found elsewhere).49ef8fc0-bb7f-488e-b6a0-f1fc77ec649b (Dell) *
Using “
” might be a supported method to just turn off hibernating, although that might not disable some of the other energy-saving methods that may be undesirable if the primary goal is to ensure system availability (including being available for remote access).Powercfg
/h off - Determine Power
-
If this is a mobile device, make sure that it has a suitable supply of electricity. For instance, if this is a laptop, check that the device says that it is plugged into power. If you are operating on battery power, prioritize key further work on this, at least enough so that you will be able to do other steps easily (and perhaps remotely, behind the scenes) later, if desired.
- Consider the next steps
-
Consider each of these things before proceeding with any of them:
- If you are standing in front of a machine, then joining a security domain may be highly desirable. Namely, this has been recommended to be an early step for Microsoft Windows joining an Active Directory domain.
-
However, joining an Active Directory domain may require rebooting. If that will effectively turn off something that is currently permitting remote access, then a smarter approach may be to ensure that remote access remains usable. This can include:
- Ensuring the computer will have a known IP address. (This could be done by capturing needed information and setting up a DHCP reservation. For IPv4, typically the information needed for that is a MAC-48 address that will be used.)
- Ensure that remote access software will be usable. For instance, if a remote connection was made using some sort of proprietary professional custom solution that required that a user visits a website and runs a program, and if that program won't auto-restart, then set up some other remote access software such as RDP.
-
Make sure such remote access software effectively works to let you get remote access. A key way to do that is to swich to such repeatable, reliable remote access software as soon as possible.
- One of the reasons to do this is to verify not only the remote access software, but that the account you want to use will work. Make sure that account has any needed permissions for remote access software, and has any Administrator permissions that will be needed.
- If a VPN is used, ensure that the VPN will be automatically re-connected after the reboot. If that isn't going to happen, consider the consequences. (For instance, this could involve calling an end user who will be near the computer when the reboot occurs.)
- If support/usage of a remote authentication system is desired, ensure that is working
-
- e.g. If using Microsoft Windows and planning to join an Active Directory domain, do so
- After joining any “security domain” which allows usage of a centralized authentication method, if I am not on the desired account, get onto the desired account.
- Determine whether logged-in user is Administrator.
-
(Maybe this was done before under a different account? If this was done before with the same account, there may not be any need to re-check.)
Presumably the account will have the desired security permissions, such as administrative access, so checking that is generally not a concern. However, if there was any change to a new account, checking this may be desired...
- Name the system
-
-
Optional: find out the system name first. (As a routine, recording the only copy of information can be a good habit to get into before overwriting the information. Reversibility is generally good to be able to do. However, the initial system name might be a particularly useless detail not considered worthy of being documented.) Running
may be sufficient to do the trick.HOSTNAME - This may often be done in a step simultaneous to joining a security domain.
- If you want this to be completely automated, you might want to try to generate a system name from a DELL service tag, HP Serial Number, other Serial Number, or MAC-48 address. More desirable naming schemes can be utilized.
- Ensuring the system has a known/documented unique name is desirable.
-
Optional: find out the system name first. (As a routine, recording the only copy of information can be a good habit to get into before overwriting the information. Reversibility is generally good to be able to do. However, the initial system name might be a particularly useless detail not considered worthy of being documented.) Running
- make place for local files
-
I got myself into a habit of using a me subdirectory underneath my home directory. There hasn't been a whole lot of software that will tinker with a directory of that name without my permission, which allows me to separate my own stuff from the clutter imposed by newer versions of Microsoft Windows and anything else that wants to make a directory without me requesting it.
mkdir
"
"%USERPROFILE%
\memkdir
"
"%USERPROFILE%
\me\execmkdir
"
"%USERPROFILE%
\me\exec\freeexemkdir
"
"%USERPROFILE%
\me\exec\freeexe\net - Get downloader
-
Get software for downloading other software. e.g., cURL.
Recommended way of doing this: grab the Freeexe collection. (See: Freeexe for ReactOS/Microsoft Windows: Archives area.)
Other options may be mentioned at TOOGAM's Software Archive: Browsers and/or ][CyberPillar][: Web Browsing.
- Get nice web browsers installed
-
See download hyperlinks from:
TOOGAM's Software Archive: Web Browsers. e.g.:
-
Chromium, Chrome Canary, Chrome. (All three can be installed. If you're going to install only one, for a professional environment, Google Chrome will be the one that most people will be most likely to expect.)
- AskVG.com: Official Link to Download Google Chrome Full Standalone Offline Installer
- has multiple hyperlinks for Google Chrome. (Those hyperlinks might now also be on TOOGAM's Software Archive?) http://toogam.com/software/archive/
- SeaMonkey
- TOOGAM's Software Archive: Firefox has Mozilla Firefox downloads for the latest version. Or for version 1.5.0.12 which can then auto-update to the latest version.
- Others could be used, such as TOOGAM's Software Archive: “text mode” web browsers
-
Chromium, Chrome Canary, Chrome. (All three can be installed. If you're going to install only one, for a professional environment, Google Chrome will be the one that most people will be most likely to expect.)
- Have a nice web browser installed as default
-
In recent years, this has involved choosing whether Google Chromium or Mozilla Firefox has been proving to be nicer
- Change Web Browser Settings
-
In particular, have browser ask where downloaded files go, instead of assuming a place that I happen to not like. So I like to do this early, before downloading a bunch of other things.
- Should: Install monitoring software (if applicable)
-
At the time of this writing, this is something far more likely to be done on a business computer.
In a very ideal setup, many of the rest of the steps might be heavily automated once Remote Management & Monitoring (“RMM”) software is installed.
- (Re-)Check Power Settings
-
If you didn't take care of Power Settings before, consider checking on them again. (Sometimes checking on power settings may be considered a lower priority, in hopes that Remote Management & Monitoring (“RMM”) software may take care of it. Once the Remote Management & Monitoring (“RMM”) software is operating, this should be taken care of quickly. If it isn't taken care of automatically for any reason, then manual efforts may prevent an avoidable problem caused by a system going to sleep.
- Get Anti-Virus installed
-
See: Anti-Malware for Microsoft Windows.
If nothing else more desirable is readily available, Clam Sentinel is one option. To start getting this most quickly:
- hop to: http://sf.net/projects/clamwin/files/clamwin
- choose the latest version number
- Grab the smaller executable file, which is the one that has a name ending with “-setup-nodb.exe”.
Then, plan to spend a bit of time getting it configured right. The ][CyberPillar][ page on ClamWin contains some information.
Naturally, the next step will be proceeding through the steps of installing ClamWin. The recommended steps for that include:
- During install, uncheck "Download Virus Database Files. (Do not Select if you connect via Proxy Server)"
- Do check “Create a desktop icon”
After installed, you'll want to proceed with Opening ClamWin. When doing so, you may prompted to download definitions. You may wish to choose not to download the Definitions if you're willing to endure insecurity for a longer period of time. But be sure to get things configured, or else ClamWin may be essentially useless. At least follow the steps from:
- Configuring ClamWin
- making ClamWin Real-Time (which can easily be done by using Clam Sentinel).
- Should: permit remote access (if not handled by monitoring software)
-
- Only do this if you are confident in how to do so securely
- Otherwise, do not do this.
-
RDP
RDP/RDC, and in particular, Remote Desktop Enabling and/or the section on Seeing a certificate warning in
.mstsc
-
RFB/VNC
- VNC server software). In general, TightVNC includes a server that works.
- For a client, TurboVNC has proven better with IPv6 compatiblity (at least, at one time). This could be useful even if the VNC server didn't support IPv6 well, when using SSH tunneling. However, even though TurboVNC may have been an excelelnt client, TurboVNC may not have a server, so using other software will be needed for that component.
- Check if devices are working well
-
-
Find out if devices are working well
- One appraoch: Check Device Manager to see if other devices are working well.
-
Another approach can be to use WMI. For exmaple:
C:\>
WMIC
PATH Win32_PnPEntity WHERE'
^ConfigManagerErrorCode
<
^> 0 or
^Availability
is NOT NULL orStatus
<
^>
Get /FORMAT:LIST"OK"
'No Instance(s) Available.
C:\>
If this spits out some data other than “
” then perhaps you may wish to start by seeing what other data is readily available about the device. Using MSDN documentation for PnPEntity may be helpful to understand some of the data that is provided.No Instance(s) Available.
As a brief hint, if
ConfigManagerErrorCode
is zero, that indicates no error.- Disregarding Disabled Devices
-
If
ConfigManagerErrorCode
is 22, that indicates a device that has been disabled. If you have manually disabled a device, and don't with to have disabled devices be reported, you could alter the above example a bit to also ignore devices withConfigManagerErrorCode
set to 22 (and ignore the check ofStatus
as that very well may be set to “ERROR”).C:\>
WMIC
PATH Win32_PnPEntity WHERE'(
^ConfigManagerErrorCode
<
^> 0 AND
^ConfigManagerErrorCode
<
^> 22) or
Get /FORMAT:LISTAvailability
is NOT NULL'No Instance(s) Available.
C:\>
- (If there is hardware that has been detected but which is not working, this is often resolved by locating an appropriate driver and updating the system.)
-
Find out if devices are working well
- Get more software installed
-
- Freeexe
-
This was already mentioned as a recommendation before, but is mentioned again in case an earlier decision was made to delay this (until some other critical steps were performed). This software is recommended to have readily available, and to become familiar with the software in this collection.
- Follow the steps in the earlier section called “make place for local files”
- Go to the Freeexe page at TOOGAM's Software Archive: Freeexe or, more specifically, jump straight to TOOGAM's Software Archive: Freeexe for ReactOS/Microsoft Windows, Archives.
-
Download the latest frecwa
*
.zip file and extract its contents into "%USERPROFILE%
\me\exec\freexe\".-
(These instructions are assuming familiarity with which directory
%USERPROFILE%
points to. If you don't know, run a traditional command prompt (
) and then run “CMD.exe
”.echo
%USERPROFILE%
- Since modern versions of Microsoft Windows contain support for extracting from ZIP files (and call such ZIP files a “Microsoft Compressed Folder”), you can do this by opening up the ZIP file in Explorer, and then copying the contents to the desired directory.
-
(These instructions are assuming familiarity with which directory
-
Download the latest frecwn
*
.zip file and extract its contents into "%USERPROFILE%
\me\exec\freeexe\net\". - At some point, the above instructions may be updated to have files be placed in a more common location. (For now, those instructions should allow a user to access the software easily.)
-
Modify standard configuration locations to run custom commands from a location where more customized information may frequently be placed.
-
Notepad
"
"
.profile%USERPROFILE%
\Have the file say:
#!
/bin/
sh.
.profile~
/me/ -
(This next part might not be quite as desirable in some cases?)
Notepad
"
"
.profile%USERPROFILE%
\me\Have the file say:
cd
~
/me/
-
-
Copy the
*
.lnk (“Shortcut icon”) files (from the frecwe*
.zip file) to the user's desktop, and get them pinned to the Task Bar. - If you're not yet familiar with the software, read over what a lot of this software can do. Some documentation, which briefly goes over a lot of this software, can be found at TOOGAM's Software Archive: Freeexe for ReactOS/Microsoft Windows, Documentation.
- Download this documentation
-
Perhaps earlier steps were being followed by viewing this documentation on another system. By now (if not at some earlier point in the process), using the new system to view this documentation may be most sensible.
- TCC/LE
-
- First, install. e.g. TOOGAM's Software Archive: JP Softare may describe TCC/LE. TCC/LE's official home page may provide some hyperlinks to directly download this. TOOGAM's Software Archive: TCC/LE may also provide a directly downloadable file.
-
Then, make an appropriate automatically-started file:
- On machines using 64-bit Microsoft Windows, you can be using the 64-bit version of TCC/LE, which will use a startup file at: C:\Program Files\JPSoft\TCCLE14x64\TCStart.BTM
Have that file contain the following contents:
@
If
Exist"
"
MyTCCGo.BTM%USERPROFILE%
\me\Call
"
"
MyTCCGo.BTM%USERPROFILE%
\me\ -
Make a batch file:
Notepad
"
"
MyTCCGo.BTM%USERPROFILE%
\me\and have that file say:
@
Echo
Offecho
%0
StartedIf
Exist"
"
PathOK.BAT%USERPROFILE%
\Me\Exec\Freeexe\Call
"
"
PathOK.BAT%USERPROFILE%
\Me\Exec\Freeexe\ - After making those/that customization(s), Restart all TCC/LE shells so that path takes effect
- Get some program downloaders
-
- gog.com
-
Downloading and installing GoG Galaxy may provide a user with an easy way to download other software which the user has purchased from gog.com
gog.com is the home site for GoG which once officially stood for “Grand ol' Games”. The site has been known to frequently sell games at a lower cost than the more famous SteamPowered.com, and sometimes with less built-in DRM restrictions. In some cases, the site has been known to offer some older software that hadn't yet been available at SteamPowered.com (which is probably why the name “Grand ol' Games” seemed appropriate).
- Humble Bundle
-
- Background Info
-
Background info: At the time of this writing, the HumbleBundle.com website seems to be focused on three offerings:
- Bundles
-
The bundles! HumbleBundle.com seeks owners of intellectual property, and tries to get them to offer licenses that are included in bundles that are much lower cost than trying to download everything seperately.
- This historically started out with “Humble Indie Bundles” that offered games with source code and available for multiple platforms. That was later followeod by games that was available for multiple platforms (even if source code wasn't shared).
- Today, bundles have been known to be available for gams, other software, and bundles reading material (sometimes focused on including technical references, and rather frequently focused on comics including manga).
- Humble Store
-
- This often ties in with SteamPowered.com by providing codes that are available at that website. Sometimes items may be on sale, cheaper here than at SteamPowered.com. Sometimes SteamPowered.com has been known to offer packages that aren't available at HumbleBundle.com, so neither option is consistently cheaper than the other. (Some SteamPowered.com packages have been known to provide discounts on remaining items when part of a package is already purchased, but this hasn't always happened.) If pricing is the same, the biggest advantage to going through the Humble Store may be to help a presumably-smaller organization, which has also been known to offer some other great deals, to make some money.
- Humble Monthly
-
A subscription service
This is available for some platforms. (Maybe Microsoft Windows is one? Otherwise, consider just logging in to download previously purchased software.)
- Maybe log into this to download?
- Prepare to get an E-Mail for verification
- Steam
-
- Get from http://store.steampowered.com/about
- Prepare to get an E-Mail for verification (presuming the account is using SteamGuard)
- Software Archive Handling
-
(A command line version of 7-Zip may be installed as part of Freeexe.)
- AutoHotkey
-
If a different option hasn't been endorsed by Freeexe, maybe get this.
-
Get the installer:
- Get from https://autohotkey.com/download/ahk-install.exe
-
Note that despite the URL, the browser may save a
different filename, e.g. fitting a pattern like AutoHotkey_1.1.
*
.exe - (Further info may be at: “Input Stuffers”, sub-section on “AutoHotkey”, in a sub-section labelled “Download AutoHotkey”.)
-
Install a script
- This would involve having a pre-built script.
- (Alternatively, perhaps even a blank one would be sufficient?
- Place in documents folder, as noted by https://autohotkey.com/docs/Scripts.htm#defaultfile
-
Get the installer:
- Anti-Virus
- This was mentioned before. If this still hasn't been done, do so. (Use the directions mentioned earlier.)
- Maybe more?
-
Here are some references that might suggest some more software to install...
http://cyberpillar.com/dirsver/1/mainsite/tutorial/bytoogam/setupos/inscmnsw/inscmnsw.htm
make a vm tutorial has some info, including makeavm/makeavm.htm#swpopbas
- Set up Task Bars
-
- Place desired shells pinned
- Place web browsers pinned
-
Place Volume Control (
) pinned, unless the plan is to just rely on the System Tray.SndVol.exe
-
Maybe add menuing systems
- GoG.com GoG Galaxy
- SteamPowered.com Steam
-
Maybe pin other items
-
Text Editing (text editing)
- (Microsoft) Notepad
- SC1? (mentioned by Freeexe for ReactOS/Microsoft Windows 0.1: Documentation. Also, text editing mentions it.)
- Wordpad (][CyberPillar][: Wordpad)
- Word Processor (e.g., if Microsoft Word was actually paid for, then having an icon to it may be something that some users would like to see happen)
-
Text Editing (text editing)
-
Remove unwanted items:
- For now, this process may not be quite as recommended until there is a verified way to easily re-create the icons. Here is the wishlist of things to remove someday...
-
Windows Store
-
presumably was pointed to a location like
or somewhere under C:\Program Files\WindowsApps\ (in a folder with a name that includes what appears to just be some atrocious randomness, like Microsoft.WindowsStore_11802.1001.11.0_x64__8wekyb3d8bbwe) where there is aC:\Windows\WinStore\
WSHost.exe
file. e.g. https://superuser.com/a/1036322WinStore.App.exe
-
presumably was pointed to a location like
-
Microsoft Edge
-
Prseumably pointing somewhere under
%windir%
\SystemApps\ in a folder with a name that includes atrocious randomness, like Microsoft.MicrosoftEdge_8wekyb3d8bbwe where there is a
programMicrosoftEdge.exe
-
Prseumably pointing somewhere under
- Customize SC1
-
From Unix-style prompt:
cp
sc1.cfg${USERPROFILE}
/me/exec/freeexe/
SciTEUser.properties${USERPROFILE}
/Or, from CMD:
CMD
/CCopy
sc1.cfg%USERPROFILE%
\me\exec\freeexe\
SciTEUser.properties%USERPROFILE%
\ - If desired: copy SSH keys
-
If you have SSH keys that allow access to remote systems, you may want a way to easily access them from the new computer. Before doing this, consider whether such access is desired from the new computer.
Details will depend on where the SSH keys are stored off of the new system. (This may often involve custom details, and so no universal solution is documented here.)
- If desired: copy PuTTY configuration
-
Load Default Settings. Save as something else like “Old Defaults”.
Change settings as desired. e.g.:
- increase lines of scrollback (on Windows menu, from 2000 to maybe 20000)
- Terminal, Bold, 14 point (default font quality)
- Windows\Translation: Set Received data character set to: CP437
- System Menu appears on Alt-Space
- logging (if desired)
Call the name of the new profile something desired, like “Default Settings” (overwriting the original set), and press Save.
Make further changes for specific systems that you may want to connect to.
- Change console font/etc.
-
- e.g., "Raster Fonts", or Consolas (16-point) may be much nicer than Courier New (which might unfortunately be a default)
-
try to get this set for every command line prompt shortcut/icon that
you are
likely to use, including
- traditional command prompt,
- Unix shells,
- JP Software products (if those are going to be used...)
More steps
- Filename extensions
-
REG
QUERY HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v HideFileExtREG
ADD HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v HideFileExt /t REG_DWORD /d 0REG
QUERY HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v HiddenREG
QUERY HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v ShowSuperHidden - Show underlines
-
The following is meant for the traditional Command Prompt which does not require escaping quotation marks:
Control Panel, Ease of Access Center, “Make the Keyboard easier to use”, “Underline keyboard shortcuts and access keys”
REG
QUERY"HKCU\Control Panel\Accessibility\Keyboard Preference"
/v OnREG
ADD"HKCU\Control Panel\Accessibility\Keyboard Preference"
/v On /t REG_SZ /d 1 - Adjust Terminal Colors
-
(Might only be super-necessary for some versions of Microsoft Windows?)
Currently, available instructions can be found by searching for "BBGGRR" on TOOGAM's Software Archive: Winsh page. (Simply get to a UAC-elevated command prompt and then run the "Echo" and "REG ADD" commands that are mentioned in that section of the web page.)
- Control Panel: View icons
-
Following are some settings that might be old (for older versions of Microsoft Windows, not pre-dating Windows Vista)? After all, Vista had Category View or Classic View, while newer version(s) have Category View or Large Icons or Small Icons. This may also be something quite quick-and-easy to just set with the GUI...
REG
QUERY HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ControlPanelREG
QUERY HKLM\Software\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel(HKCU represents user-specific configuration.)
REG
ADD HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel /v AllItemsIconView /t REG_DWORD /d 0REG
ADD HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel /v StartUpPage /t REG_DWORD /d 1According to a “social” page by “mark wright”:
- the “StartUpPage” needs to be set to 1.
- 0 is large icons, 1 is small icons.
- Also, that same page notes that this may be set using Group Policy, using “User Configuration > Administrative Templates > Control Panel > Always open All Control Panel Items when opening Control Panel”.
- Mouse Keys:
-
Typically prefer having Mouse Keys active when Numlock is off, but enabling the shortcut
- Determine a flags value
-
possibly documented here:
https://msdn.microsoft.com/en-us/library/windows/desktop/dd373593(v=vs.85).aspx
e.g.:
- 0: Whether turned on. 0 is off. 1 is on.
- 2: Might be needed for MouseKeys to be available?
- 4: Whether Left Alt+Left Shift+Num Lock will toggle
- 0: "Display a warning message when turning a setting on", ON would be 8
- 16: Whether to play a sound when toggling the feature
- 32: Whether to show Taskbar icon
- 64: Enable Ctrl to move larger amounts (or shift for smaller amounts)
- 128: Numlock should be OFF to enable MouseKeys. (0 = Numlock should be ON.)
That is 244 sub-total.
- MKF_MOUSEKEYSON 0x00000001
- OFF: MKF_AVAILABLE 0x00000002
- ON: MKF_HOTKEYACTIVE 0x00000004
- ON: MKF_HOTKEYSOUND 0x00000010
- ON: MKF_INDICATOR 0x00000020
- ON: MKF_MODIFIERS 0x00000040
REG
QUERY"HKCU\Control Panel\Accessibility\MouseKeys"
/v FlagsREG
QUERY"HKCU\Control Panel\Accessibility\MouseKeys"
/v Flags /t REG_DWORD /d244
- Toggle Keys
-
You can test just by pressing Caps Lock, Num Locks, or Scroll Lock.
REG
QUERY"HKCU\Control Panel\Accessibility\ToggleKeys"
/v FlagsYou can often change whether this is enabled by just holding down the “Num Lock” key for 5-8 seconds. Note that doing this will have the initial effect of pressing the “Num Lock” key (and so it will change whether “Num Lock” is currently enabled).
Value probably documented at: MSDN: Toggle Keys.
UtilMan
- Auto-Reboot/etc
-
- Auto-Reboot Recovery
-
System Properties, Advanced, Startup and Recovery
Turn off auto-reboot if the system will be interacted with. (That way, error messages can be seen instead of effectively hidden.) Although, for systems where uptime is important, auto-reboot might be a good thing.
Or, perhaps try this:
REG
ADD HKLM\SYSTEM\CurrentControlSet\Control\CrashControl /v AutoReboot /t REG_DWORD /d 0(followed by a reboot to take effect)
- Set memory dump settings.
-
System Properties, Advanced, Startup and Recovery
Do Write an event to the system log. (Probably set okay by default.) (No recommendations proactively made at this time, except don't use “(none)”. At least “Small memory dump (256K)”, although truthfully even that might be too sparse to be easily usable for many people.)
- Auto-Reboot after Update
-
- Windows XP through 8
-
For Windows XP through “all versions of Windows 8” (quoting MakeUseOf.com: How to Disable Forced Restarts After a Windows Update), it looks like the HKLM\SOFTWARE\Policies\Microsoft\Windows\ might not have a WindowsUpdate\ key, so...
REG
ADD HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdateREG
ADD HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AUREG
ADD HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU /v NoAutoRebootWithLoggedOnUsers /t REG_DWORD /d 1Adding that 32-bit DWORD just may do the trick, after the next policy update. That can be done by rebooting or simply running “
”GPUpdate
/forceAlternatively, Windows Update settings can specify whether updates even get installed automatically. If they aren't installed automatically, then the automatic post-install reboot doesn't occur (after an automatic installation).
- Page file
-
Despite swap size indicating a more ideal method might be achievable, there is currently not a guide available here to determine an ideal size. One line of thinking is that the operating system vendor likely knows how the operating system can operate ideally, so...
- leaving “Automatically manage paging file size for all drives” may be sensible.
If someone wishes to customize it, here is another line of thinking on why using 1.5 times the RAM size is a value that is recommendable:
- A lot of people do that
- This amount of disk space is generally available for this task
- The general consensus seems to be that this does work well
Until a more precise approach is determined (and documented here), that's what is being recommended for now.
- More
-
- Control Panel\Ease of Access\Mouse\Prevent windows from being automatically arranged when moved to the edge of the screen
-
Control Panel\Mouse\Pointer Options
-
Show location of pointer when I press the CTRL key
- This defauts to Off, but can be handy in some cases.
-
Show location of pointer when I press the CTRL key
- Aero Features
-
- Aero Shake
-
Check if this feature is enabled. Note that the following may not pre-exist, so don't be alarmed if you aren't finding it.
REG
QUERY HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v DisallowShakingTo turn off this feature:
REG
ADD HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v DisallowShaking /t REG_DWORD /d 1 - Disable Windows Aero Snap's Docking
-
https://winaero.com/blog/disable-snapping-in-windows-10-but-keep-other-extended-window-management-options/
REG
QUERY"HKCU\Control Panel\Desktop"
/v DockMovingREG
QUERY"HKCU\Control Panel\Desktop"
/v DockMoving /t REG_SZ /d 0
- Document the system
-
This shows a lot of usage of WMI. (MS Win WMI) That is considered nice because a lot of software can use WMI to automatically gather a lot of this data. (This could be nice for software that can generate reports using automatically gathered information.) Some people may prefer to use some software that performs many of these tasks and presents a graphical interface. Some of the software that performs such functionality will use WMI behind the scenes.
Some things to document:
- Name
-
Full name(s), including any DNS name, and Microsoft Active Directory security domain.
perhaps as simple as running
hostname
- Description
-
In documentation, note the purpose of the machine.
- System Number
-
Sometimes, a “system number” is assigned to a specific system, and then details like assigned (static) IP addresses may typically use that “system number”. If such a thing is being used for this system, identify that number up front, so it may be recognized as the rest of the documentation is seen.
- Remote access method(s)
-
-
Software/protocols
- e.g., using the SSH protocol, using RFB-VNC, using RDC/RDP. If using Qemu, note the steps how to start enabling RDC/RDP from within the Qemu monitor.
- network address(es)
- Account(s) with Administrator access
-
Software/protocols
- Physical Location
-
If this is a locally-run virtual machine, note what hardware it is (typically) running on. (If it is a remote machine, like a machine ru nning some sort of “cloud”-based service, specify what network is providing that service.) Basically, how does this machine get located?
- Startup/Shutdown notes
-
Particularly useful for virtual machines. Note how the machine gets started/stopped. If there are pre-requisites (ideally not!), mention those.
- Drives/Partitions
-
If this is a virtual machine, note the file that contains the virtual drive.
Possible useful commands for local storage devices:
WMIC
CDROM Get Caption,Description,DeviceID,MediaTypeWMIC
CDROM Get Caption,NameNote: A “Blu-Ray Recordable Erasable” (BDRE, a Re-writer) drive has been known to show “MediaType=DVD Writer”. So, when “DVD” is reported, that probably means “DVD or Blu-Ray”. This note was probably made in reference to Microsoft Windows 10.
WMIC
DISKDRIVE Get DeviceID,MediaType,Model,Partitions,TotalSectors,BytesPerSectorWMIC
PARTITION GET BlockSize,Caption,Description,DeviceID,DiskIndex,Index,NumberOfBlocks,PrimaryPartition,Size,StartingOffset,Type /FORMAT:LISTWMIC
LOGICALDISK Get Caption,DeviceID,Description,DriveType,FileSystem,FreeSpace,Name,Size,VolumeSerialNumberWMIC
VOLUME GET Capacity,DriveLetter,DriveType,FileSystem,FreeSpace,Label,SerialNumberWMIC
VOLUME GET Capacity,Caption,DeviceID,DriveLetter,DriveType,FileSystem,FreeSpace,Label,SerialNumberMaybe also:
WMIC
RECOVERYOS Get?
- Memory
-
Maybe:
WMIC
MEMPHYSICAL Get MemoryDevices,MaxCapacityMemoryDevices might specify how many RAM slots are on the motherboard?
(Not sure if that shows empty slots)WMIC
MEMORYCHIP Get BankLabel,Capacity,DeviceLocator,PartNumberThis gives the names of each RAM slot (BankLabel and DeviceLocator), and the capacity of each RAM chip in them
Not sure if this shows empty slots...
MSDN: Win32_PhysicalMemory notes that the BankLabel could look like “Bank 0” (zero) or “Bank A”. (So don't see a bank label on one computer and assume that all computers use the same format/pattern.)There are some other tidbits that may be worth knowing when trying to upgrade. Here are some more properties documented on the MSDN page:
WMIC
MEMORYCHIP Get BankLabel,ConfiguredClockSpeed,FormFactor,MemoryType,Speed,Tag,TypeDetail /FORMAT:LISTWMIC
MEMORYCHIP Get BankLabel,Caption,Description,Manufacturer,Model,Name,OtherIdentifyingInfo,PartNumber,SerialNumber /FORMAT:LISTWMIC
MEMORYCHIP Get BankLabel,ConfiguredVoltage,DataWidth,MaxVoltage,MinVoltage,PositionInRow,TotalWidth /FORMAT:LISTe.g.,
may have different values for DDR, DDR2, and DDR3, although the MSDN page does note that may not be detected.MemoryType
Also, Task Manager's Performance tab may show "Slots used:" "4 of 4"
Another option that could be tried is:
systeminfo
|
find.exe
/C:"Total Physical Memory"
Other details that could be nice to know: ECC or Non-ECC (Non-ECC common on consumer equipment), Registered/Buffered or Unregistered/Unbuffered (Unregistered/Unbuffered common on consumer equipment)
Maybe also check out: CPU-Z (third party program)'s SPD tab, and see the slot info
Besides what's been mentioned above,
can gather info by specifyingWMIC
MEMCACHE
andPAGEFILE
- CPU
-
WMIC
CPU Get Name,CurrentClockSpeed,ThreadCount,ProcessorType - Motherboard
-
This can occassionally be nice to know. The following may provide some information that is worth keeping track of.
WMIC
BaseBoard Get Manufacturer,Product,SerialNumber,Version - BIOS
-
WMIC
BIOS Get Manufacturer,Name,ReleaseDate - Misc Model Info
-
WMIC
PATH MS_SystemInformation GET /FORMAT:LISTIf a DELL, the system should have a “service tag”, which is similar in concept for a “serial number”. However, DELL's website may be able to look up a “service tag” more easily, and provide some useful information about a system. To see the service tag, check the BIOS for the serila number:
WMIC
BIOS Get Manufacturer,Name,ReleaseDate,SerialNumber - Video Card
-
WMIC
PATH win32_VideoController Get Name /FORMAT:LIST - More
-
WMIC
CSPRODUCT Get /FORMAT:LISTThe following might also be some sections worth poking around in:
DISKDRIVE DMACHANNEL FSDIR IDECONTROLLER IRQ JOB LOGICALDISK VOLUME NICCONFIG NIC other Net stuff OS PRODUCT
PARTITION and other items (the GPT page might have more info on this?)
Perhaps see also: Detect hardware.
If any equipment required drivers, note where the drivers can be re-obtained. (Especially drivers needed for accessing storage devices and network adapters, as accessing such equipment is often done to be able to fully support other drivers).
Some equipment responds more to certain WMI queries. (Using upgraded drivers, and/or operating systems, might also help to get more information from certain queries.) If some useful information cannot be retrieved automatically, determine whether information is available from another method of looking up details. e.g.:
-
DELL's website will show information about many
computers if the Service Tag number is provided in the
Warranty Lookup website. This has proven
to be true for years, even for equipment that is out of warranty.
- It is generally best to be able to have your own documentation, rather than relying on a third party.
-
For recently-purchased equipment, vendors may have
information online.
- Some information might not remain available. Some vendors may only show information about purchases that occurred recently. Even if such purchase information is available, once the vendor stops selling a model of equipment because a newer model comes out, some information about an older model may disappear.
- It is generally best to be able to have your own documentation, rather than relying on a third party. So be sure to retain your own records of anything you want to keep.
Samples of some other information that you may want to record include: purchase date, purchase price.
- Check incoming ICMP handling
-
If possible, have another machine on the network ping the new machine. If that doesn't work, check whether incoming ICMP “Echo Request” messages are permitted through the Windows Firewall.
(Do not just check from the local computer. Firewall settings will often treat remote computers different. So try to check ICMP from a remote system.)
If the ICMP messages are not going through, and especially if other network communications (like SMB directory sharing traffic) are working just fine, then check whether the local filewall settings are blocking ICMP traffic.
(
Since “verifying current settings before making changes” is a good habit, this tutorial should provide details about how to check the current settings. More information should be added here.)(to be added)
netsh
advfirewall firewall...(to be added)
If you need to make a change, you could try using information from MS KB 947709, which provided this command for Windows Vista and newer:
netsh
advfirewall firewall add rule name="All
protocol=ICMP
"V4
icmp
:any,any dir=in action=allowv4
- Set up File sharing?
- ../../../techns/netfeats/filexfer
- Check trial time
-
If you installed a trial version of the operating system, check how many days remain for the trial.
-
Locate slmgr.vbs (which might be in
%windir%
\System32\) -
Try something like this:
C:\>
CScript
/dlv
slmgr.vbs%windir%
\System32\[Output...]
License Status: Licensed
[Output...]
C:\>
-
Locate slmgr.vbs (which might be in
-
Wordpad (“
”) behaviorWrite
-
Adjust Windows Wordpad (“
”):Write
- On View menu, uncheck Ruler.
- Also set to Word Wrap, Wrap to Window.
- Make just wide enough for 80 characters plus the keyboard cursor.
Wordpad (][CyberPillar][: Wordpad)
- Web browser add-ons
-
-
Google Chrome: chrome://extensions/
- Firefox: about:addons
Some to consider may be:
- Chrome: The Great Suspender
- Tab counters?
-
Shopping-assisters
- See: (Job Paths)
- Firefox add-on: https://addons.mozilla.org/en-US/firefox/addon/no-google-link-rewrite-webexts
- HTTP Header Live (works with FireFox)
Perhaps see also: ][CyberPillar][: Web Browsing
-
Google Chrome: chrome://extensions/
- Final Wrap-Up?
-
Start installing more software, e.g. things good from installers (GoG.com, Humble Bundle, SteamPowered.com)
Perhaps re-check power settings. If you have been working on getting a system set up, but don't need ongoing convenient access, then power saving might be more useful than having the system be responsive on the network. (This might be especially true if the system will be on a network where the system can be wakened with WoL.)
Other software (which may be specialized line-of-business sofware) that may be essential for a person to be able to use in order to perform (possibly critical) business functions
Other features, such as VPNs, supporting printers, etc.
“Office Suite” software
- Other Resource(s)
- Perhaps: Regular Preparation Steps?
Version 1
Note: Some of this may still be rather untested.
These selections are largely decided on personal opinion. Some may be more popular than others. For instance, the “Hide extensions for known file types” is particularly popular to change. (Having those “filename extensions” hidden tends to make people more prone to making decisions that may be bad for security.)
Based on a comment made from SevenForums posting, (logging off and then) logging in may be required for a setting to take effect. That might be true of many settings, which might be one advantage to using the GUI (if doing that will cause an updating setting to take more immediate effect).
- Domain
-
For professional releases of Microsoft Windows, joining a(n “Active Directory”-based) security domain can make a number of changes, many of which may be desirable to do earlier rather than later.
Doing so involves having permissions, and changing the computer name. The GUI option for this can be seen from a System Properties page. See:
rundll32
sysdm.dll
,,1 - Folder View
-
- Finding options in GUI
-
To pull up the GUI configuration, either use:
rundll32
shell32.dll
,Options_RunDLL
7
or follow other steps mentioned by Microsoft Windows Components: Folder Options
- Options
-
REG
QUERY HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced- Hidden
-
In the “Hidden files an folders” option, choose “Show hidden files, folders, and drives”. Uncheck: “Hide empty drives”.
- Extensions
-
The change I appreciate the most may be to uncheck “Hide extensions for known file types”.
REG
QUERY HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v HideFileExtREG
ADD HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v HideFileExt /t REG_DWORD /d 0 - “Hide protected operationg system files (Recommended)”
-
...
- Control Panel: View icons
-
REG
QUERY HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ControlPanelREG
QUERY HKLM\Software\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel(HKCU represents user-specific configuration.)
REG
ADD HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel /v AllItemsIconView /t REG_DWORD /d 0REG
ADD HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel /v StartUpPage /t REG_DWORD /d 1According to a “social” page by “mark wright”:
- the “StartUpPage” needs to be set to 1.
- 0 is large icons, 1 is small icons.
- Also, that same page notes that this may be set using Group Policy, using “User Configuration > Administrative Templates > Control Panel > Always open All Control Panel Items when opening Control Panel”.
- Show menu options
-
Directions for Windows 10:
- Graphical approach
-
- Go to Microsoft Windows Component: “Accessibility” control panel applet.
- Choose “Make the keyboard easier to use”
- In the “Make it easier to use keyboard shortcuts” section, check the “Underline keyboard shortcuts and access keys” checkbox.
- Modifying the Registry directly
-
Using this approach, one can modify the registry from the command line. However, some additional care/thought might be needed. For this reason, using the GUI might be a bit more reasonable of an approach for this particular setting. (The directions for that were just provided, previous to this sub-section.) However, if you'd like to use the command line (which is probably best if using automated tools that can perform calculations easily), here's the way to do so:
REG
QUERY"HKCU\Control Panel\Accessibility\Keyboard Preference"
/v OnREG
ADD"HKCU\Control Panel\Accessibility\Keyboard Preference"
/v On /t REG_SZ /d 1REG
QUERY"HKCU\Control Panel\Desktop"
/v UserPreferencesMaske.g., checking the box may set the third bit, so instead of REG_BINARY 9E5E068012000000, the new value would be BE5E068012000000.
Perhaps see also: MSDN: Desktop Mask bit 5.
- MouseKeys
-
This is expecially complicated, as I like to change two defaults. First, whether it is enabled. Second, the Num Lock setting.
Directions for Windows 10:
Go to Microsoft Windows Component: Accessibility control panel applet.
Choose “Make the mouse easier to use”
I might even ignore the “Turn on MouseKeys” option. I do choose “Set up mouse keys”.
I like these settings:
Numeric Value Setting Name Constant Commmentary 1 “Turn on Mouse keys” MKF_MOUSEKEYSON 2 “ ” MKF_AVAILABLE 4 “Turn on Mouse Keys with left ALT + left SHIFT + NUM LOCK” MKF_HOTKEYACTIVE 8 “Display a warning message when turning a setting on” MKF_CONFIRMHOTKEY 16 (0x10) “Make a sound when turning a setting on or off” MKF_HOTKEYSOUND MSDN: Mousekeys settings documentation calls this a “siren” 32 (0x20) “A visual indicator is displayed when the MouseKeys feature is on.” MKF_INDICATOR Presumably this affects whether the system tray icon is shown (?) 64 (0x40) “Hold down CTRL to speed up and SHIFT to slow down MKF_MODIFIERS Enables using the CtrlSpeed value stored in the HKCU\Control Panel\Accessility\MouseKeys registry key 128 (0x80) “Use Mouse Keys when NUM LOCK is:” MKF_REPLACENUMBERS In the GUI, I like to set this to “Off”. That involves setting the bit to a value of one. (Programmers usually identify as a value of “on”, so the GUI's way of phrasing things feels rather backwards compared to how the value is stored in memory.)
(The default is probably “On” in the GUI, which involves having the bit cleared to zero/off).
I've chosen a personal default different than what Microsoft typically sets, because I commonly use the Numpad for numbers, or mouse movement. I rarely use the Numpad for arrow keys. (I did back in the day when I used the keyboard for movement in games, when a more suitable device was unavailable. Frequently, usage of a “game pad” or “joystick” were preferred. Since the “Microsoft Xbox 360 Controller for Windows” and the support for the Xbox One controller, that reason has felt even less relevant. Even when the keyboard was used, many games supported recognizing the numeric input.)
Additional descriptions (and some of the details shown here) are available at: MSDN: Mousekeys settings documentation.
To set these settings from the command line, figure out the combined totals. For instance, to use all of the options except “Display a warning message when turning a setting on”, add 128+64+32+16+4+2+1 to get 247. (If MKF_CONFIRMHOTKEY were used as well, then the total would be 255.)
REG
QUERY"HKCU\Control Panel\Accessibility\MouseKeys" /v Flags
REG
ADD"HKCU\Control Panel\Accessibility\MouseKeys" /v Flags /t REG_SZ /d 247
- More mouse
-
To increase visibility:
Windows Components: “Mouse” control panel.
Or, better yet, go straight to the “Pointer Options” tab with:
control
main.cpl
,@0,2- “Display pointer trails”
- Checking on can be desirable, or annoying.
- “Show location of pointer when I press the CTRL key”
-
This can make finding a lost mouse cursor a bit easier, without needing to move the mouse cursor.
MSFN forum post suggests this may be 0x4000 of HKCU\Control Panel\Desktop\UserPreferencesMask (which would the 15th bit from the right of UserPreferencesMask, which TechNet documentation of Desktop UserPreferencesMask documents as Reserved). (bit 15?)
- Power configuration
-
Keep system from auto-hibernating if there is intention to have the system be remotely accessed...
- Enable Remote Desktop
-
Only available for some versions of Microsoft Windows.
See: Remote Desktop Enabling or Windows Components: “System Properties” “Remote” tab
Other documentation that may be helpful: Windows Components
A common next step may be installing more software. See: TOOGAM's “multi-server project” tutorial: installing more software.
Idea: Make an icon called “All Tasks” which runs
explorer.exe
shell:::{ED7BA470-8E54-465E-825C-99712043E01C}
Delivery Optimization Download Mode: documentation, forum post
|
Default has been seen to be zero, but apparently can vary based on which edition. Microsoft Documentation on Delivery Optimization indicates “Windows 10 Enterprise and Education editions7rdquo; may default to allow peer-to-peer.