Table Modification for Custom Themes

For those of you which have already been utilizing custom themes in ScreenConnect, we've got a small but very useful modification that's worth trying out. This one was passed to our support team by a wonderful customer. Try adding the following to your custom theme:

tr:nth-child(odd) {
     background-color: #444;

The exact color you choose to use for the background color is likely to vary according to your theme and how dramatic you want to make the effect. However, this should enable much easier reading of tables (on the Host page and within menus on the Admin page) as shown below.

If you think you have another useful modification that could benefit the community, feel free to share it with us! Visit our forum and spread your bit of genius with us and fellow ScreenConnect users.

Posted by Jacob Turpin at 7:55 AM       0 Comments       Share
Categories: ScreenConnect

Kaspersky Exclusions

If you're a regular Kaspersky user, you've likely noticed abnormal and frustrating behavior when using ScreenConnect. The antivirus software allows the download of any ScreenConnect client software. However, once inside the session, it's not possible to control any Kaspersky-related windows or settings. This results in any antivirus prompt disrupting service to customers. Fortunately, there's a potential fix to the situation for organizations that disperse the software.

For Kaspersky users that distribute the software en-masse, it's possible to add a rule to exclude ScreenConnect files. This prevents the software from accidentally flagging any ScreenConnect files within the software, circumventing the known issues. A demonstration on how to achieve this can be found here. These rules can be pushed out from a central location to many computers at once.

We recognize that this particular setting doesn't apply to everyone's use of Kaspersky, and we're actively working to provide an all-encompasing solution. We've reached out to Kaspersky several times, without response. We encourage any users who are experiencing this loss of functionality to log a request with Kaspersky. We'll keep you posted on any progress as well.

Posted by Jacob Turpin at 3:40 AM       0 Comments       Share
Categories: ScreenConnect

Extension Spotlight: Auto Respond to Message

It's been a few weeks now, and we've pretty well covered the set of preview Extensions currently available in the pre-release of version 5.0. We've witnessed the modularity they bring, allowing the addition of desired features. And, we're actively working on developer information so that you can develop your own extensions.

We've covered three extensions thus far. First, we explored client-initiated sessions with the Guest Session Starter. Next, the screen preview enhancer added a quick tool for observing guests. Finally, we presented the technician with a tool to quickly jump into sesions from the desktop.

This week, we're concerned with Access clients. The "Auto Respond to Message" extension will auto respond to messages from Access clients when a Host is not connected to the session. The message is customizable too.

Note: There are a few configurations that can be made to customize this Extension. 1. In the SessionEventTrigger.xml file, you can specify the From address for the messages. If not included, the field will be the default Mail from value. In the file, find the SmtpTriggerAction area and add:

With a value in the "" field.

A correct setting should look like:

<TriggerAction xsi:type="SmtpTriggerAction" To="" Subject="AutoResponse has executed" Body="{Event.Data}"/>

2. Also in the SessionEventTrigger, the ScreenConnect server's web service port may need to be configured if it is different than the default (8040). You can change it in the HttpTriggerAction section by changing the port in the URI to whatever your server is using.

3. In the Resource file (Web.en-US.resx): You can configure the username (AutoResponse.HostName) from which the auto response is sent And you can configure the message itself (AutoResponse.Message).

Posted by Jacob Turpin at 8:25 AM       0 Comments       Share
Categories: ScreenConnect

Extension Spotlight: ScreenConnector

As you've likely seen or heard by now, Extensions are coming to ScreenConnect. With their addition, ScreenConnect will now have modular additions of code that can be installed/uninstalled and enabled/disabled at will. We'll even be giving you developer information in time as well (the development tools are actually already available as an extension).

So far, we've covered a client-initiated session starter and a screen preview enhancer. They're useful, but today's spotlight really up the utility of ScreenConnect. Let's say that you have a particular session, regardless of type, that you need to join. Maybe, it's an internal machine that you need to service through an Access meeting. Or, perhaps, you're a tier two technician who needs to join your tier one staff in an exisitng Support session. It can be a hassle to open up the website, find your session, and start the joining process. Now, there's a way to circumvent the majority of the process.

ScreenConnector is the new extension that allows you to connect to exisitng ScreenConnect sessions quickly with an .exe that resides on your desktop. The extension places a downloadable .exe in the Extras menu of the guest page. Launching ScreenConnect will prompt rusers to authenticate, and then they'll be able to use the Windows "Jump Lists".

Note: At this time, ScreenConnector is only available on Windows machines and uses .NET version 4.5

Posted by Jacob Turpin at 2:41 AM       0 Comments       Share
Categories: feature | ScreenConnect

Extension Spotlight: Expand Thumbnail Preview Image

In case you don't frequent our social media, we'll be covering extensions that are in development. Many of these will be available at the release of version 5. We started off with a video of the Guest Session Starter last week. Today, we're going to switch gears with a more technician-focused extension.

Sometimes a guest just simply needs a nudge in the right direction, not necessarily a full session. In this case, it would be nice to see the guest's screen at a sizeable resolution without the need to join a session. The Expand Thumbnail Preview addresses this issue. The extension allows you to take a quick look at the guest's system without having to connect to the machine. After the extension is installed, you'll see a button below the screenshot on the Host page to expand the image.

Note: You also have to make a minor change to the web.config file in order for the extension to function properly.

  1. On the ScreenConnect server, open the web.config file (C:\Program Files (x86)\ScreenConnect\web.config on Windows and /opt/screenconnect/web.config on Linux and Mac).
  2. Find the following two settings: GuestScreenshotMaxScalePercent and GuestScreenshotMaxPixelCount.
  3. Change the value of those two settings to something larger, I recommend setting them to: <add key="GuestScreenshotMaxScalePercent" value="60"></add> and <add key="GuestScreenshotMaxPixelCount" value="1000000"></add>.
  4. Save the changes
Give it a try, and let us know what you think on our forums. And, stay tuned for the coverage on our next Extension.


Posted by Jacob Turpin at 2:56 AM       0 Comments       Share
Categories: ScreenConnect

Extension Spotlight: Guest Session Starter

With the upcoming release of version 5.0, one of the centerpiece additions will be extensions. The functionality extensions will bring can be paralleled to what's currently done with Chrome browser extensions. They are additional segments of code that are added onto your existing ScreenConnect installation. In doing so, you add some new piece of functionality.

This week, and for the next coming weeks, we will be covering various extensions of interest. And, to kick things off, we'll be reviewing the Guest Session Starter. A demo is available below.

If the Guest Session Starter has peaked your interest, feel free to download the lastest Pre-Release of version 5.0 from our website. Just note, the pre-released version is not meant for a production environment. We highly recommend installing it in a test environment.

Posted by Jacob Turpin at 5:10 AM       0 Comments       Share
Categories: ScreenConnect

Automatic Query Tool

We've spent the past few weeks exploring the ability to obtain extra information from the ScreenConnect database. We obtained a database viewer, and we've run some interesting queries about access machines and support session durations. It's a bit of an understatement to say that we can find some pretty useful information with SQL quieries. But, there are limitations to our current workflow. What if you need a less technical employee to generate reports? Or, what if you have a query that needs to be run on a regular basis?

Forunately, we can take the process one step further with some programming aptitude. There are libraries readily available for handling SQL queries. In this case, I've used my most familiar language: Java. It's possible to easily open and query the database, manipulate the data, and save to a format that can be viewed with Excel. It can even be exported an as executable file.

Below, you'll find two files: the .exe file for duration and the zipped Eclipse project. The program is written specifically for Windows 64-bit machines, but can be easily changed for Unix-based operating systems. You can choose to use my exising .exe file to generate support duration reports (Warning: it requires Java 8), and you can modify the existing code to generate your own reports.

Note: The executable must be run on the server machine. A good strategy is to place the .exe on your server's desktop, install an access client on your server (if you haven't already), and remote to the server anytime you need a report.

Generate Report .exe (3.78 mb)

Eclipse Project .zip (3.72 mb)

Good luck with your customizations, and share any interesting modifications with the forum!

Posted by Jacob Turpin at 3:57 AM       0 Comments       Share
Categories: ScreenConnect

SQL Queries: Support Session Duration

At this point, we've pretty well covered creating machine lists. Powered with your SQL tools and some basic queries, you can create a list of all machines and include some basic information about them. But, we want to take our utilization of the database one step further. We want something that can be used on a yearly, monthly, or perhaps even weekly basis to streamline our workflow and save time. I'm, of course, talking about determining session duration.

A valuable group of our users provide ad-hoc support to customer machines external to their organization. The vast majority of these interactions occur via Support sessions in ScreenConnect. And, these sessions typical occur with some sort of hourly billing rate. Yet, there isn't an easy way to generate usage reports (something we recognize and are looking to bring official support to in the future). Luckily, we can use our SQL tools and a well-crafted query to generate a quick and easy report in Excel. Let's check out the code below:

SELECT, sc.ParticipantName, s.GuestLoggedOnUsername, 
s.GuestMachineName, min(sce.time) as Start,
((julianday(max(sce.time)) - julianday(min(sce.time))) * 24 * 60)
as 'Duration (min)'

FROM SessionConnection sc

INNER JOIN SESSION s ON s.sessionid = sc.sessionid

INNER JOIN sessionconnectionevent sce ON sce.sessionid = s.sessionid
AND sc.connectionid = sce.connectionid

WHERE sc.ProcessType = 1 AND (sce.EventType = 10 OR sce.EventType = 11)
AND s.SessionType = 0

GROUP BY, sc.ParticipantName, s.GuestLoggedOnUsername,

The query above will return the duration for all support sesions that have occured since the database was last cleared. Note: the time return is the total amount of time from when the technician originally created the support session to when the final user exited that session. Make sure this fits in line with how your organization does billing if you intend on using this query. Also important to consider is that, in order to maximize effectiveness, I suggest using the SQLite Database Browser to export the results in CSV format to Excel. From there, it's easy to filter and order data by Start time and/or other data.

Hopefully, this can be implemented into your company's workflow, cut some time out of preparing your billing, and serve as a proper holdover until official Extended Reporting is offered in the ScreenConnect software.

Posted by Jacob Turpin at 2:24 AM       0 Comments       Share
Categories: Development | feature | ScreenConnect

SQL Queries: Listing Your Access Machines

In my previous blog bost, I talked about using freely available SQL tools in order to extract some more detailed information from the ScreenConnect database. It contained some very useful instructions on how to go about the process for those unfamiliar with SQL, but the example query included didn't provide much value for the power user. In this post, I aim to expand upon our original query.


For many ScreenConnect customers, the ability to install an unlimited number of unattended access clients is a HUGE selling point. Some of our customers have installed upwards of 5,000 clients in order to fullfill their remote access needs. However, having a large number of machines can make tracking those machines difficult. Quickly generating a report of your "All Access" machines has considerable merit for anyone attempt to audit a large number of machines. Therefore, the query below is intended to return an overview of all machines with an installed Access clients that is still running.

SELECT Name, GuestLoggedOnUsername, GuestMachineName, GuestOperatingSystemName, GuestOperatingSystemVersion, SessionType FROM Session
NOT EXISTS (SELECT * FROM SessionEvent WHERE SessionID = Session.SessionID AND EventType = 21)
NOT EXISTS (SELECT * FROM SessionConnectionEvent WHERE SessionID = Session.SessionID AND EventType = 21)
EXISTS (SELECT * FROM SessionConnectionEvent WHERE SessionID = Session.SessionID AND (EventType = 10 OR EventType = 11))
SessionType Like 2
AND GuestInfoUpdateTime != '0001-01-01 00:00:00Z'


Follow the same set of instructions from the previous blog post in order to generate a neat report in Excel that can be quickly filtered to view your desired machines. Note that the query above returns all extries where:

  1. No End Session event has occurred
  2. A Connect or Disconnect event has occured
  3. The session is registered as an Access session
The additional "WHERE" entry is optional parameter (and primarily meant for any development environments). Additionally, the query can be modified to return Support or Meeting sessions by changing the SessionType parameter to 0 or 1 respectively.


Posted by Jacob Turpin at 4:41 AM       0 Comments       Share
Categories: feature | ScreenConnect

Manually Querying the ScreenConnect Database

ScreenConnect offers the ability to audit session history with its basic and advanced auditing features. However, specific queries can often be useful for finding targeted information such as the number of concurrent sessions running at a given time, session durations, comprehensive lists of unattended machines, etc. Fortunately, the database file can be queried directly to receive specific information.


Part 1 - Installation: 

The first step necessary in running your own queries with ease is to download a Database Browser tool. This allows you to quickly and easily view the data structure and data entries, while giving you the ability to run queries and view the results immediatley. One of the favorite tools among our team is the free SQLite Database Browser. It's simple to get up and running, but we've included the steps below. 

1. Visit the website for the SQLite Database Browser ( )

2. Download the installation file for your appropriate system

3. Follow the Setup Wizard to install the software


Part 2 - Executing a Query:

Now that you have the Database Browser software installed, we can begin executing queries. ScreenConnect uses SQLite to store all data to a database consisting of four tables. These tables include Session, Session Connection, and Session Event information. Using the available information at your disposal, a wide variety of information can be reported based on the instructions below.  

1. Open the SQLite Database Browser

2. Select Open Database from the top menu 


3. Navigate to the ScreenConnect directory and open the file “Session.db”

      Windows:            \Program Files(x86)\ScreenConnect\App_Data

      Mac:                      /opt/ScreenConnect/App_Data 

4. Select the “Execute SQL” tab in the SQLite Database Browser 

5. Enter your SQL query into the space provided

6. Select the “Run” button to execute the code

7. Click the “Save File” button and select “Export to CSV”

8. Leave setting as default and click the “OK” button

9. Save the file to your desire location


A report is now saved in a format that is easily accessed via Microsoft Excel. With the power of SQLite and the Database Browser, you can access a much more specific set of information from the ScreenConnect database. Below is an example query for accessing a list of all unattended clients existing since the last time the database was cleared. Give it a try, and see what else you can determine with your newfound ability.






SELECT Name, GuestLoggedOnUserDomain, GuestLoggedOnUserName, GuestOperatingSystemName, GuestInfoUpdateTime

      FROM Session 

      WHERE SessionType LIKE 2

      ORDER BY GuestInfoUpdateTime DESC;

Posted by Jacob Turpin at 7:30 AM       0 Comments       Share
Categories: ScreenConnect