Public Web Browser version 4 (PWB v4) Installation
To install PWB version 4, unzip to a folder of your choice, and create a shortcut to the PWB.EXE file.
PWB version 4 can run directly from a network share by unzipping to a network share, creating a shortcut using the UNC path and copying the shortcut to the local computer. This is possible because PWB uses the local copy of the HTML renderer.
Public Web Browser version 4 (PWB v4) Configuration
Please see the License document for license information.
PWB is a highly configurable web browser, based on Microsoft Internet Explorer, for use in public areas where a web presence is desired. There are a number of settings for PWB, this document addresses them.
PWB uses an "INI" file for configuration. We have tried to make the configuration of multiple installations of PWB easy by utilizing an INI file. Once a satisfactory configuration has been created, the INI file can be propagated to multiple computers with ease. PWB also supports the use of command line options to specify INI files that can be located on the computer’s hard drive or as a shared INI on a network server. Using a network server housing the INI files for multiple configurations creates a centrally located place to upgrade and configure multiple installs of PWB.
The unregistered version of PWB v4 has two limitations. A hard coded 10 minute activity timer and "<unregistered>" appears in the title bar. Please refer to the licensing web page for license information.
The registration license number will only be good for the length of time you have purchased, once this time expires PWB will revert back to unregistered and a new license number will need to be obtained.
First Steps
Since PWB uses the Microsoft Edge for HTML rendering, the first step after installing PWB is to ensure the Edge WebView2 is installed.
Microsoft Edge WebView2:
https://developer.microsoft.com/en-us/microsoft-edge/webview2
PWB uses a Configuration File (INI) for its configuration. To configure PWB edit the INI file in Windows Notepad by double clicking it. Start by changing the Home Page PWB opens to.
[Browser]
HomePage=https://your_library_url
Set the home page to the web page you want PWB to display when it is started.
The PWB command line:
The PWB command line can have several configurations, from a simple web address to an Internet shortcut with a Universal Naming Convention (UNC) INI file path. If an INI file is not specified on the command line PWB looks for PWB.INI in the folder where the PWB.EXE file resides. The following are several examples with explanations.
Standard open
…\PWB.exe
Starts PWB with default INI and opens the home page.
Simple web address (URL)
…\PWB.exe www.teamsoftwaresolutions.com
Starts PWB with default INI and browses to the TeamSoftware Solutions website.
Internet shortcut
…\PWB.exe teamsoftware.url
Starts PWB with default INI and uses the “teamsoftware†Internet shortcut to open a web site.
Alternate INI
…\PWB.exe /INI="Other.ini" or PWB /INI"=C:\PWB\Other.INI"
Starts PWB with INI specified in the /INI= argument.
The path must be in quotes, with no space between the = and ".
Alternate INI with web address
…\PWB.exe www.teamsoftwaresolutions.com /INI="C:\PWB\Other.INI"
Starts PWB with Other.INI and browses to the TeamSoftware Solutions website.
Alternate INI from server with UNC path
…\PWB.exe /INI=\\Server\Share\Folder\Other.INI
Starts PWB with Other.INI located in a folder on a server share.
INI files opened this way make it easy to share centrally located INI files among several computers.
Alternate INI from Web Server
…\PWB.exe /INI="Other.INI" /URLINI=http://www.web.com/PWB.INI
Downloads "PWB.INI" from the web server to "Other.INI", and then starts PWB using the "Other.INI" file.
When using the URLINI, both the /INI and /URLINI must be used.
Running PWB from a server:
Not only can you share an INI file on a server among multiple copies of PWB running from several computers, but you can also share the executable (EXE) file. In fact, PWB was written with this in mind. By creating a shortcut on a computer that points to a UNC path to the PWB executable, you can have a single point of entry for running PWB.
A few things you should be aware of when running PWB from a server. If you are using the PWB URL or IP filters, for each web page PWB navigates to it needs to parse the URL or IP filter file to check for access. When PWB starts it needs to read through the Favorites folder. Large filter files can cause the navigation to lag, and large Favorites folders can cause a slow start, on a slow or congested network. If you are using the PWB filters, or have a large Favorites folder, you may want to consider running PWB from the server but housing the filter, and Favorites, files on the local computer.
Steps to run PWB from a server:
In the command (Target) line of the shortcut, enter an UNC path to PWB.
\\Server\Share\Folder\PWB.exe
\\Server\Share\Folder\PWB.exe teamsoftwaresolutions.com
\\Server\Share\Folder\PWB.exe /INI=\\Server\Share\Folder\Other.INI
In the Start in line, enter the UNC path where the EXE is located.
\\Server\Share\Folder
The INI is organized in a series of sections enclosed in brackets "[]", followed by keys with values for the configuration options. There are two basic keys, ones that can be True or False, and ones that are string values. The True/False keys either turn the option on or off. For instance, setting the following will cause the New Tab button not to be displayed on the toolbar.
[Buttons]
NewTab=False
The string value keys rename or replace the PWB option. Here are some examples of string value keys.
Change title of browser:
[Browser]
Title=Our Library
Change Policy file location to UNC path:
[Files]
PolicyFile=\\Server\Share\Folder\Policy.txt
INI keys explanations:
[AutoRegister]
RegisterKey=
Unique key used to allow PWB to auto register from on online database.
Please request auto register key from support@teamsoftwaresolutions.com
RegisterPassword=
User supplied auto register password.
RegisterDaysLeft=30
Number of days left before current registration expires before PWB checks for a new registration number.
After PWB receives the new registration number, it will wait until the new registration number has the number of days left before checking again.
RegisterSeconds=15
Number of seconds PWB will wait for the online database to answer request.
RegisterShowWindow=False
Show PWB registration window when requesting new registration number.
UseWindowsRegistry=False
Causes PWN to enter registration information into Windows registry instead of the PWB INI file.
Can be used when you prefer to have the INI file read only.
RegisterDelayClose=False
Prevents the auto registration dialog from closing.
Used mainly for debugging database problems.
[Browser]
RegisteredTo=Unregistered
Registration name found on the paid invoice.
RegistrationNumber=
Registration number found on the paid invoice.
IniFileVersion=4.00
INI version number.
Should only be changed when upgrading.
Title=Public Web Browser v4
Title on the Window title bar.
HomePage=http://www.teamsoftwaresolutions.com/thankyou.html
Home page for browser.
StartMaximized=False
Start browser maximized.
WindowHeight=
Set starting window height.
WindowWidth=
Sets starting window width.
WindowTop=
Set starting window top.
WindowLeft=
Sets the starting window left.
DisableMinimizeButton=False
Disable maximize button.
DisableMaximizeButton=False
Disables minimize button.
DisableCloseButton=False
Disables close button.
DisableMoveWindow=False
Disables moving window.
DisableResizeWindow=False
Disables resizing window.
AddressBarReadOnly=False
Make the address bar read only.
ShowAddressBar=True
Shows address bar.
DefaultZoomLevel=
Sets default zoom level.
IE: Zoom from 10 to 1000, 100=normal.
Edge: Zoom percentage, 100=normal.
SecureMode=False
Starts browser in secure mode.
Opens in alternate Windows Desktop.
No Start button, Desktop, or Task Tray available.
DisableExit=False
Prevent browser from exiting.
Some settings such as ClearCacheOnClose require PWB to exit.
You must use [Overrides]Exit keyword to exit.
See [Overrides] section.
ConfirmClose=False
Confirms closing of the browser.
ExitPage=
Page browser navigates to before exiting.
Useful when using confirm close.
If Disables [Files]Favorites folder.
AlwaysOnBottom=False
Keeps the browser behind all other windows.
IE based only.
Disables
Show
or hide toolbar.
DisableNewTab=False
Disable
new tabs.
IE
based only.
Disable
or keyboard is clicked.
KioskMode=False
Start
PWB in kiosk mode.
EnableTheaterMode=False
Enable
theater mode (F11).
HideCursor=False
Hide
mouse cursor.
Title=PWB
v4
Set
title on window title bar.
ShowActivityTimer=True
Shows
activity timer on status bar.
ShowInactivityTimer=True
Shows
inactivity timer on status bar.
Shows
status bar icons.
Disables
closing tabs.
word to allow for domain suffix.
Causes Ctrl-O, and Ctrl-L, to focus to address bar instead displaying Open dialog.
AlwaysOnTop=False
Force the main window to be always on top.
DisableSecondInstance=True
Disables second instances of PWB. New instances opened as new windows.
CommandLineHomePage=False
Sets the home button to the URL specified in the command line.
Sets focus to tab (0 based) when multiple home tabs are used.
ShowChromeErrors=False
Show Edge error messages
Sets max length of tab title, default 1024
DefaultLanguage=
Sets default browser language in BCP 47 format
Filter file for Protocol filter. Similar to URL filter except works on protocol ex: http://
JavaScriptFilterFile=
Filter file for JavaScript filter. Tab separated +/-URL and JavaScript file.
Used for [Security]CheckJavaScriptAccess=True.
See example: https://www.teamsoftwaresolutions.com/forum/viewtopic.php?t=3808
ShowSettings=False
Show settings button on navigation bar
ShowHistory=False
Show history button on navigation bar
ShowFavorites=False
Show favorites button on navigation bar
ShowKioskBar=False
Show the kiosk bar
DisableLastTabCloseWindow=True
Disable closing window when last tab is closed
DisablePWBUserAgent=False
Disable PWB user agent identification
UserAgent=
Custom user agent string
UserAgentAdd=
Additional user agent string
DisableCtrlEnter=False
Disables the Ctrl+Enter shortcut in the address bar that navigates to www.[text].com.
DisableNewWindow=False
Prevents PWB from opening new browser windows. Pages that request a new window are opened in a new tab.
LoadingMessage=Loading...
Message displayed in the title bar while a web page is loading.
SecureModeDelayStart=2
Number of seconds PWB waits before opening after Secure Mode is enabled.
ShowNavigationBar=True
Displays the navigation bar in the main browser window.
StartTimersOnMouseKeyboard=False
Restarts the Activity and Inactivity timers when the mouse or keyboard is used.
TabHomePage=
Home page displayed when a new tab is opened. If blank, the HomePage setting is used.
[WebFiles]
EnableWebFiles=False
Enable web hosted files
CheckURLFile=
URL for URL filter file PWB downloads.
FIle is downloaded to the location specified in [Files] section.
[Directories]
DownloadDirectory=
Sets default download directory.
[Security]
StationEnvironmentVariable=COMPUTERNAME
Environment variable to use in the history file for naming.
UseUniqueHistoryFiles=False
Creates a history file based on StationEnvironmentVariable.
WriteHistoryFile=False
Enables history file creation and writing.
TrackURL=False
Writes all URLs to the history file.
CheckURLAccess=False
Enables URL filter file.
Uses [Files]CheckURLFile file.
See "URL.txt" for example.
ShowAccessDialog=True
Shows access dialog when URL is denied.
See [Security]CheckURLAccess=True.
Uses [Files]AccessMessageFile file.
LogAccess=False
Logs access in history file.
See [Security]WriteHistoryFile.
See [Security]CheckURLAccess.
ClearCacheOnClose=False
Clears cache when browser closes.
DisableContextMenu=False
Disables context (right click) menu.
UseCustomContextMenu=True
Enables PWB custom context menu.
See [ContextMenu] section.
OnlyAccessHTTP=False
Limits browser to HTTP (HTTPS) protocol.
RestartOnClose=False
Restarts browser when it is closed.
DisableFileDownload=False
Disables file downloads.
This may prevent files from being displayed.
Example PDF and DOC files.
AllowBrowseOnDeny=False
Allows browser to show the site when denied in the filter.
OnlyAccessInternet=False
Prevents access to local files.
DebugAccessString=False
Shows dialog with URL being denied.
Useful when debugging filter files.
LogDeniedAccess=False
Logs denied URLs to the history file.
See [Security]WriteHistoryFile.
ShowPolicyDialog=False
Shows policy dialog when browser starts.
See [Files]PolicyFile.
RestrictFileDownload=False
Prevent file downloads not initiated by the user.
the title [Files] PasswordFile= must be set.
Password=
Password for password dialog.
AccessURLRedirect=
Redirect to URL after access is denied.
SecondInstanceNavigateCurrent=False
Navigates new instance to URL in current window.
This will disable pop up windows and can cause issues.
CheckExecuteAccess=False
See “[Files]ExecuteFilterFileâ€.
FilterIgnoreEmpty=True
Filter ignores empty URLs.
DisableFileOpen=False
Disables Open file dialog
DisableFileSave=False
Disables Save File Dialog
CheckJavaScriptAccess=False
Enable JavaScript URL filter
DisableFileOpen=False
Disable File Open Dialog
DisableFileSave=False
Disable File Save Dialog
DisableSettings=False
Disable Windows Settings
DisablePrinting=False
Disables all printing in PWB
Sets [Buttons]Print and PrintPreview to false
Sets [MenuItems]AppPrint and AppPrintPreview to false
Sets [ContextMenu]PrintTarget and [ContextMenu]Print to false
Injects JavaScript to disable window.print() function
AllowAllPermissions=False
Automatically allows all permission requests such as camera, microphone and geolocation.
CheckProtocolAccess=False
Checks the protocol of each URL against the ProtocolFilterFile.
CheckURLMainFrameOnly=False
Checks only the main frame URL against the URL filter file.
DefaultSSLNotification=True
Uses the default WebView2 behavior when a SSL certificate error is found.
DisableNonPWBWindows=False
Prevents opening of windows not created by PWB.
DisableSSLNotification=False
Automatically allows web pages with SSL certificate errors without notification.
LogoffOnExit=False
Logs off the Windows user when PWB exits.
RebootOnExit=False
Restarts the computer when PWB exits.
SetPWBAsDefault=False
Sets PWB as the default web browser.
ShowPasswordDialog=False
Shows the password dialog when PWB is started.
[Java] (short for JavaScript)
EnableExternalJava=False
Enable Dynamic External JavaScript Commands.
JavaExit=
Dynamic External Java Command Exit PWB.
JavaActivity=
Dynamic External Java Command Set Activity Time.
JavaRegister=
Dynamic External Java Command Set Registration Code.
JavaHideToolbar=
Dynamic External Java Command Hide Toolbar.
JavaExecute=
Dynamic External Java Command Execute Application.
JavaReadINIFile=
Dynamic External Java Command Re-read INI file.
JavaPrint=
Dynamic External Java Command Print Web Page.
JavaHideAddressBar=
Dynamic External Java Command Hide Address Bar.
JavaOverrides=
Dynamic External Java Command Show Overrides Dialog.
JavaStartApp=
Dynamic External Java Command Start Application in new Process.
JavaSetActivity=
Dynamic External Java Command Set Activity Time.
JavaGetActivity=
Dynamic External Java Command Get Activity Time.
JavaHideNavbar=
Dynamic External JavaScript Command hide Navigation bar. Argument string "true" or "false".
JavaHideRebar=
Dynamic External JavaScript Command hides all bars. Argument string "true" or "false".
JavaHideKioskBar=
Dynamic External JavaScript Command to hide Kiosk bar. Argument string "true" or "false".
JavaAddressBarReadOnly=
Dynamic External JavaScript Command set address bar read only. Argument string "true" or "false".
JavaHomePage=
Dynamic External JavaScript Command set home page. Argument string "URL"
JavaHistoryFile=
Dynamic External JavaScript Command set history file. Argument string "path to history file"
JavaAccessMessageFile=
Dynamic External JavaScript Command set access message file. Argument string "path to HTML file"
JavaCheckURLFile=
Dynamic External JavaScript Command reset URL filter file. Argument string "path to URL file"
JavaOpen=
Dynamic External JavaScript Command Open new window. Argument string "URL".
JavaClose=
Dynamic External Java Command close browser window.
JavaLogoff=
Dynamic External Java Command logoff the computer.
JavaReboot=
Dynamic External Java Command reboot the computer.
JavaShutdown=
Dynamic External Java Command shutdown the computer.
JavaRegistryRegister=
Dynamic External Java Command register PWB in the Windows registry.
[SecondWindow]
ShowNavigationBar=True
Displays the navigation bar in second window and popup windows.
[Files]
PolicyFile=
HTML file containing the PWB usage policy displayed when PWB is started.
HistoryFile=
File used by PWB to store browser history.
AccessMessageFile=
HTML file displayed when access to a web page is denied.
ConfirmCloseMessageFile=
HTML file displayed when PWB is closed asking for confirmation.
FavoritesFolder=Favorites
Folder containing the Favorites. Path is relative to the PWB application folder.
ExtensionFolder=Extensions
Folder containing the PWB extension files.
StartupScript=
Script executed when PWB is started.
ShutdownScript=
Script executed when PWB is closed.
PolicyDeclineScript=
Script executed when a user declines the usage policy.
PasswordFile=
HTML file used for the PWB password dialog.
ExecuteFilterFile=
File containing filters used to determine which files PWB may execute.
LoadErrorFile=
HTML file displayed when a web page fails to load. Use %1 for the error text.
ProtocolFilterFile=
File containing the protocols PWB is allowed or denied from using.
DisabledMessageFile=
HTML file displayed when a disabled function is used.
[Dialogs]
DialogSeconds=10
Number of seconds a dialog is displayed before it automatically closes.
[Printer]
ShowPrintPreview=True
Shows the print preview dialog before printing. When False, PWB prints directly to the default printer.
PrintingMessageFile=
HTML file displayed while a document is printing.
CheckPrinterAccess=False
Checks printer access before printing is allowed.
CheckPrinterFile=
File containing filters used to check printer access.
CheckPrinterMessage=
HTML file displayed when printer access is denied.
[Overrides]
ExitBrowser=
Override keyword to exit browser.
Access overrides dialog with Ctrl-Alt-Shift + Insert.
Logoff=
Override keyword to logoff computer.
Access overrides dialog with Ctrl-Alt-Shift + Insert.
Shutdown=
Override keyword to shutdown computer.
Access overrides dialog with Ctrl-Alt-Shift + Insert.
DisableFilters=
Override to disable and enable PWB filters.
ShowAddressBar=
Override to show and hide address bar.
ReReadINIFile=
Override to re-read PWB INI file.
OverrideURLKeyword=
Keyword to enter into address bar to open overrides.
ClearCookies=
Override keyword to clear browser cookies.
[Inactivity]
InactivityTimer=False
Enable inactivity timer.
InactivitySeconds=1200
Inactivity time in seconds.
InactivityMessageFile=Inactivity.html
Inactivity informational dialog message.
InactivityAction=Exit
Inactivity action to perform.
Exit: Exit browser.
Home: Navigates home.
Warn: Show informational message only.
Restart: Restarts browser.
Logoff: Logoff computer.
Reboot: Reboot computer.
Shutdown: Shutdown computer.
InactivityStartOnOpen=False
Starts inactivity time when browser starts.
When false inactivity timer starts on activity.
InactivityShowDialog=True
Show inactivity informational dialog.
ResetOnMouseMove=True
Reset inactivity timer on mouse movement.
ResetOnMouseButton=True
Reset inactivity timer on mouse buttons.
ResetOnKeyboard=True
Reset inactivity timer on keyboard activity.
ResetOnNavigation=True
Resets inactivity timer on navigation
[Activity]
ActivityTimer=False
Enables activity timer.
ActivitySeconds=1200
Activity time before action.
ActivityMessageFile=Activity.html
Activity timer message file for dialog.
ActivityAction=Exit
Activity action to perform.
Exit: Exit browser.
Home: Navigates home.
Warn: Show informational message only.
Restart: Restarts browser.
Logoff: Logoff computer.
Reboot: Reboot computer.
Shutdown: Shutdown computer.
ActivityWarnAt=
Warn about activity at the remaining seconds.
ActivityWarnMessageFile=
Warn message file for dialog.
ActivityStartOnOpen=FALSE
Start activity timer when browser starts.
ActivitySecondWarnAt=
Warn a second time at the remaining seconds.
ActivitySecondWarnMessageFile=
Warn message file for dialog.
[Buttons]
Back=True
Show back button.
Forward=True
Show forward button.
Home=True
Show home button.
Favorites=True
Show Favorites button.
Print=True
Show print button.
Refresh=True
Show refresh button.
New=True
Show new window button.
Settings=True
Show settings button.
AddFavorite=True
Show add favorite button.
[ContextMenu]
Back=True
Show Back menu item.
Forward=True
Show Forward menu item.
Separator0=True
Show Separator (line) 0 menu item.
OpenLink=True
IE based only.
Show Open Link menu item.
OpenLinkTab=True
IE based only.
Show Open Link in Tab menu item.
OpenLinkNew=True
IE based only.
Show Open Link in New Window menu item.
SaveTarget=True
Show Save Target menu item.
PrintTarget=True
IE based only.
Show Print Target menu item.
Separator1=True
IE based only.
Show Separator (line) 1 menu item.
ShowPicture=True
IE based only.
Show Picture menu item.
SavePicture=True
Show Save Picture menu item.
Cut=True
Show Cut menu item.
Copy=True
Show Copy menu item.
CopyShortcut=True
Show Copy Shortcut menu item.
Paste=True
Show Paste menu item.
Separator3=True
Show Separator (line) 3 menu item.
Encoding=True
IE based only.
Show Encoding menu item.
Separator4=True
Show Separator (line) 4 menu item.
Print=True
Show Print menu item.
Refresh=True
Show Refresh menu item.
ScreenShot=True
Enables Edge Context menu for Web Capture
CopyLink=True
Enables Edge Context menu for Copy Link
CopyImage=True
Enables Edge Context menu for Copy Image
CopyLocation=False
Enables Edge Context menu for Copy Location
MagnifyImage=True
Enables Edge Context menu for Magnify Image
Emoji=True
Enables Edge Context menu for Emoji
PasteMatchStyle=True
Enables Edge Context menu for Paste and Match Style
SelectAll=True
Enables Edge Context menu for Select All
Loop=True
Enables Edge Context menu for Loop
ShowControls=True
Enables Edge Context menu for Show Controls
SaveMediaAs=False
Enables Edge Context menu for Save Media As
CopyVideoFrame=True
Enables Edge Context menu for Copy Video Frame
PictureInPciture=True
Enables Edge Context menu for Picture In Picture
Separator2=True
Show Separator (line) 2 menu item.
Share=Share
Text used for the Share item in the context menu.
[KioskButtons]
Back=True
Show back button on kiosk bar.
Forward=True
Show forward button on kiosk bar.
Stop=True
Show stop button on kiosk bar.
Refresh=True
Show refresh button on kiosk bar.
Home=True
Show home button on kiosk bar.
Print=True
Show print button on kiosk bar.
ScrollUp=True
Show scroll up button on kiosk bar.
ScrollDown=True
Show scroll down button on kiosk bar.
Close=True
Show close button on kiosk bar.
ZoomIncrease=True
Shows Zoom increase button on Kiosk Bar.
ZoomNormal=True
Shows Zoom normal button on Kiosk Bar.
ZoomDecrease=True
Shows Zoom decrease button on Kiosk Bar.
CloseTab=CloseTab
Shows Close Tab button on Kiosk Bar.
[MultipleHomeTabs]
Add section keys with URLs for home tabs when PWB is opened.
OtherHome1=http://www.team2s.com
OtherHome2=http://www.team2s.com/forum
[PageScripts]
Add section keys to read JavaScript files and inject the script into the page. First line of file needs to be URL to match
InjectJavaScript1=filename.js
[CloseWindows]
Add section keys to close windows.
Each key in the section should contain a window title to be closed when PWB loses focus.
Window1=Print in Microsoft Edge