logo
Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

2 Pages12>
Options
Go to last post Go to first unread
Scott  
#1 Posted : Monday, January 18, 2016 4:32:14 PM(UTC)
Scott


Rank: Administration

Medals: Level 4: Wise Old Owl! Received 100 Thanks!

Joined: 3/28/2014(UTC)
Posts: 2,380
United States

Thanks: 3 times
Was thanked: 291 time(s) in 249 post(s)
This extension adds four tabs to the Host page which are used to display various system information about the remote machine.

UserPostedImage

A common request from users is to be able to view additional system information about each remote machine. Using this extension, you can view the following:

  1. Running processes and their resources
  2. Currently installed software
  3. The latest event log information
  4. All registered services and their current state


Processes:
UserPostedImage

Services:
UserPostedImage

You can request that ScreenConnect retrieve/update the information by clicking on the Refresh link at the top of each respective tab on the Host page. The list for each type can be quite long, so using Control-F to search for specific entries may prove beneficial.

Requirements:
Windows remote machines must have powershell 2.0 or greater installed.
Linux and OSX remote machines should not have any specific requirements.
For optimal performance, it is strongly suggested to use ScreenConnect 5.5 or newer.

Notes:
Requesting a list of installed Software on Windows machines can take a while, perhaps upwards of 60 seconds or more. Since this list is relatively static, it does not need to be refreshed as often.

As with any new feature or extension released, feedback is always encouraged. Please let us know your thoughts by replying to this thread.
ScreenConnect Team
thanks 5 users thanked Scott for this useful post.
Jesseb on 1/18/2016(UTC), marktoo on 1/18/2016(UTC), rmaccara on 1/19/2016(UTC), PIN on 1/21/2016(UTC), ebell on 4/7/2016(UTC)
Jesseb  
#2 Posted : Monday, January 18, 2016 4:47:28 PM(UTC)
Jesseb


Rank: Advanced Member

Medals: ScreenConnect Advisor: Focus Group MemberLevel 1: Random Act of Kindness! Received One Thanks!

Joined: 3/9/2015(UTC)
Posts: 65
United States
Location: Texas

Thanks: 13 times
Was thanked: 18 time(s) in 4 post(s)
very nice!! been hoping for this for a while, works great so far! it would be the bees knees if you could start/stop/restart services, but no biggie
tomlaf  
#3 Posted : Monday, January 18, 2016 6:41:08 PM(UTC)
tomlaf


Rank: Member

Medals: ScreenConnect Advisor: Focus Group Member

Joined: 10/28/2015(UTC)
Posts: 40
Canada
Location: Sherbrooke

Was thanked: 1 time(s) in 1 post(s)
Will be nice to see the time of last update.
May be part of the header or at the end.
And with the time since.

Like : Updated at 1300 18 Jan 2015 (2 hr ago)
Cooper  
#4 Posted : Monday, January 18, 2016 7:58:46 PM(UTC)
Cooper


Rank: Advanced Member

Medals: Bug Buster Level One: Spoon!Level 1: Random Act of Kindness! Received One Thanks!

Joined: 10/28/2015(UTC)
Posts: 42
United States
Location: WA

Thanks: 10 times
Was thanked: 4 time(s) in 4 post(s)
Do you know what else might interfere with the ability of the extension to work? I tried to get the tabs for this extension to refresh, but the machines don't return any information. Under the command tab I can see that several lines of code were sent. For one of the machines, I checked the version of PowerShell and it was 2.0.

DIAGNOSTIC-RESPONSE/1
DiagnosticType: EventLog
ContentType: xml

<?xml version="1.0"?>
<Objects>
<Object Type="System.Management.Automation.PSCustomObject">
<Property Name="TimeWritten" Type="System.DateTime">1/18/2016 9:24:06 AM</Property>
<Property Name="EntryType" Type="System.Diagnostics.EventLogEntryType">Information</Property>
<Property Name="Source" Type="System.String">NVWMI</Property>
<Property Name="Message" Type="System.String">NVWMI - Microsoft Internet Explorer [c:/program files (x86)/internet explorer/iexplore.exe] was launched and [Microsoft Internet Explorer] profile was applied
</Property>
</Object>
<Object Type="System.Management.Automation.PSCustomObject">
<Property Name="TimeWritten" Type="System.DateTime">1/18/2016 9:24:06 AM</Property>
<Property Name="EntryType" Type="System.Diagnostics.EventLogEntryType">Information</Property>
<Property Name="Source" Type="System.String">NVWMI</Property>
<Property Name="Message" Type="System.String">runPipeServer : creating named pipe: '\\.\pipe\UxdService'
</Property>
</Object>
<Object Type="System.Management.Automation.PSCustomObject">
<Property Name="TimeWritten" Type="System.DateTime">1/18/2016 9:24:06 AM</Property>
<Property Name="EntryType" Type="System.Diagnostics.EventLogEntryType">Information</Property>
<Property Name="Source" Type="System.String">NVWMI</Property>
<Property Name="Message" Type="System.String">runPipeServer : connecting named pipe: '\\.\pipe\UxdService'
</Property>
</Object>
<Object Type="System.Management.Automation.PSCustomObject">
<Property Name="TimeWritten" Type="System.DateTime">1/18/2016 9:24:06 AM</Property>
<Property Name="EntryType" Type="System.Diagnostics.EventLogEntryType">Information</Property>
<Property Name="Source" Type="System.String">NVWMI</Property>
<Property Name="Message" Type="System.String">runPipeServer : connecting named pipe: '\\.\pipe\UxdService'
</Property>
</Object>
<Object Type="System.Management.Automation.PSCustomObject">
<Property Name="TimeWritten" Type="System.DateTime">1/18/2016 9:24:06 AM</Property>
<Property Name="EntryType" Type="System.Diagnostics.EventLogEntryType">Information</Property>
<Property Name="Source" Type="System.String">NVWMI</Property>
<Property Name="Message" Type="System.String">runPipeServer : creating named pipe: '\\.\pipe\UxdService'
</Property>
</Object>
<Object Type="System.Management.Automation.PSCustomObject">
<Property Name="TimeWritten" Type="System.DateTime">1/18/2016 9:23:15 AM</Property>
<Property Name="EntryType" Type="System.Diagnostics.EventLogEntryType">Information</Property>
<Property Name="Source" Type="System.String">NVWMI</Property>
<Property Name="Message" Type="System.String">runPipeServer : creating named pipe: '\\.\pipe\UxdService'
</Property>
</Object>
<Object Type="System.Management.Automation.PSCustomObject">
<Property Name="TimeWritten" Type="System.DateTime">1/18/2016 9:23:15 AM</Property>
<Property Name="EntryType" Type="System.Diagnostics.EventLogEntryType">Information</Property>
<Property Name="Source" Type="System.String">NVWMI</Property>
<Property Name="Message" Type="System.String">NVWMI - Microsoft Internet Explorer [c:/program files (x86)/internet explorer/iexplore.exe] was launched and [Microsoft Internet Explorer] profile was applied
</Property>
</Object>
<Object Type="System.Management.Automation.PSCustomObject">
<Property Name="TimeWritten" Type="System.DateTime">1/18/2016 9:23:15 AM</Property>
<Property Name="EntryType" Type="System.Diagnostics.EventLogEntryType">Information</Property>
<Property Name="Source" Type="System.String">NVWMI</Property>
<Property Name="Message" Type="System.String">runPipeServer : connecting named pipe: '\\.\pipe\UxdService'
</Property>
</Object>
<Object Type="System.Management.Automation.PSCustomObject">
<Property Name="TimeWritten" Type="System.DateTime">1/18/2016 9:23:14 AM</Property>
<Property Name="EntryType" Type="System.Diagnostics.EventLogEntryType">Information</Property>
<Property Name="Source" Type="System.String">NVWMI</Property>
<Property Name="Message" Type="System.String">runPipeServer : creating named pipe: '\\.\pipe\UxdService'
</Property>
</Object>
<Object Type="System.Management.Automation.PSCustomObject">
<Property Name="TimeWritten" Type="System.DateTime">1/18/2016 9:23:14 AM</Property>
<Property Name="EntryType" Type="System.Diagnostics.EventLogEntryType">Information</Property>
<Property Name="Source" Type="System.String">NVWMI</Property>
<Property Name="Message" Type="System.String">runPipeServer : connecting named pipe: '\\.\pipe\UxdService'
</Property>
</Object>
</Objects>
Scott  
#5 Posted : Monday, January 18, 2016 8:38:29 PM(UTC)
Scott


Rank: Administration

Medals: Level 4: Wise Old Owl! Received 100 Thanks!

Joined: 3/28/2014(UTC)
Posts: 2,380
United States

Thanks: 3 times
Was thanked: 291 time(s) in 249 post(s)
@Cooper what browser are you using?
ScreenConnect Team
marktoo  
#6 Posted : Monday, January 18, 2016 9:55:45 PM(UTC)
marktoo


Rank: Advanced Member

Medals: Level 1: Random Act of Kindness! Received One Thanks!

Joined: 3/29/2015(UTC)
Posts: 99
United States
Location: Metro DC

Thanks: 27 times
Was thanked: 8 time(s) in 7 post(s)
Looks useful... thanks!
Cooper  
#7 Posted : Monday, January 18, 2016 10:08:29 PM(UTC)
Cooper


Rank: Advanced Member

Medals: Bug Buster Level One: Spoon!Level 1: Random Act of Kindness! Received One Thanks!

Joined: 10/28/2015(UTC)
Posts: 42
United States
Location: WA

Thanks: 10 times
Was thanked: 4 time(s) in 4 post(s)
Originally Posted by: Scott Go to Quoted Post
@Cooper what browser are you using?


We're using Internet Explorer 11. More specifically, version 11.0.10240.16644.

I tried in Firefox and it did work there. However, we use IE for Intranet pages.

We're currently running version 5.5.9968.5807 of ScreenConnect.

Edited by user Monday, January 18, 2016 10:52:39 PM(UTC)  | Reason: add more info

krutz  
#8 Posted : Tuesday, January 19, 2016 12:58:26 AM(UTC)
krutz


Rank: Newbie

Joined: 12/30/2015(UTC)
Posts: 17
United States
Location: Omaha

Thanks: 1 times
Did you make sure that in Powershell you have run? Set-ExecutionPolicy RemoteSigned
Scott  
#9 Posted : Tuesday, January 19, 2016 3:34:02 PM(UTC)
Scott


Rank: Administration

Medals: Level 4: Wise Old Owl! Received 100 Thanks!

Joined: 3/28/2014(UTC)
Posts: 2,380
United States

Thanks: 3 times
Was thanked: 291 time(s) in 249 post(s)
@Cooper I just made a fix so that table will display in IE/Edge. Microsoft handles childNodes differently than other browsers which was causing the issue; it feels like they do it that way just to make it more complicated.

It'll take a few days to hit the Library, but keep an eye out for version 1.1 with the fix.
ScreenConnect Team
thanks 1 user thanked Scott for this useful post.
Cooper on 1/19/2016(UTC)
Cooper  
#10 Posted : Tuesday, January 19, 2016 5:34:26 PM(UTC)
Cooper


Rank: Advanced Member

Medals: Bug Buster Level One: Spoon!Level 1: Random Act of Kindness! Received One Thanks!

Joined: 10/28/2015(UTC)
Posts: 42
United States
Location: WA

Thanks: 10 times
Was thanked: 4 time(s) in 4 post(s)
Having more information at our fingertips is a great time saver. For us, it means being able to troubleshoot before we even connect to the machine.

Would it be possible to take this a step forward?

like…

• the ability to export information on who has a particular program installed
-For example, a list of everyone who has Microsoft Project installed
• remotely kill a process
• remotely start/stop a service
promptcare  
#11 Posted : Tuesday, January 19, 2016 5:38:05 PM(UTC)
promptcare


Rank: Advanced Member

Medals: ScreenConnect Advisor: Focus Group MemberLevel 2: Lent a Helping Hand! 10 Thanks!

Joined: 9/14/2011(UTC)
Posts: 351
Location: ON, Canada

Thanks: 28 times
Was thanked: 13 time(s) in 11 post(s)
Suggestion: In the Software tab, a button that will show (or directly copy) each title's UninstallString. This way, if we spot a toolbar or something, we can initiate an uninstallation from the Command tab. (Bonus points if you can figure out how to just add an Uninstall button to each title).

Edit: Similarly, would be nice to be able to Stop/Restart the services and processes.

Edited by user Tuesday, January 19, 2016 5:53:13 PM(UTC)  | Reason: Not specified

thanks 1 user thanked promptcare for this useful post.
rmaccara on 1/19/2016(UTC)
bmangeng  
#12 Posted : Tuesday, January 19, 2016 6:08:12 PM(UTC)
bmangeng


Rank: Newbie

Joined: 7/21/2014(UTC)
Posts: 5
United States
Location: Nevada

Thanks: 1 times
This will be a great tool! I am having trouble getting it to function though. I have tried it in Chrome, IE, and Edge using version 1.1 of the tool. I cannot convince it to populate any information in the tabs.
promptcare  
#13 Posted : Tuesday, January 19, 2016 6:10:46 PM(UTC)
promptcare


Rank: Advanced Member

Medals: ScreenConnect Advisor: Focus Group MemberLevel 2: Lent a Helping Hand! 10 Thanks!

Joined: 9/14/2011(UTC)
Posts: 351
Location: ON, Canada

Thanks: 28 times
Was thanked: 13 time(s) in 11 post(s)
Bmangeng, look in the Command tab - it sends a command out and then has to wait for the info to come back. I'm running it in Chrome and it takes around 30 seconds to populate each of the Remote Diags sections.
Cooper  
#14 Posted : Tuesday, January 19, 2016 6:21:44 PM(UTC)
Cooper


Rank: Advanced Member

Medals: Bug Buster Level One: Spoon!Level 1: Random Act of Kindness! Received One Thanks!

Joined: 10/28/2015(UTC)
Posts: 42
United States
Location: WA

Thanks: 10 times
Was thanked: 4 time(s) in 4 post(s)
Using Internet Explorer 11, the newly updated v1.1 of the extension works. Thank you!
Scott  
#15 Posted : Tuesday, January 19, 2016 7:16:46 PM(UTC)
Scott


Rank: Administration

Medals: Level 4: Wise Old Owl! Received 100 Thanks!

Joined: 3/28/2014(UTC)
Posts: 2,380
United States

Thanks: 3 times
Was thanked: 291 time(s) in 249 post(s)
@promptcare I just added a column for IdentifyingNumber to the installed software table which should kick out a Guid per Win32 object. You can use the following command to uninstall the object after the Guid is known:

Code:

#!ps 
#maxlength=100000 
#timeout=90000
(Get-WmiObject -Class Win32_Product -Filter "IdentifyingNumber = '{F1032F2B-1775-4A9F-A39A-A6D1CDFAC7E0}'").Uninstall()


Eventually this will be baked into the extension along with the ability to start/stop services and perhaps kill a proc. I had intended to do services and process in rev2, but I didn't even consider Uninstalling software, easy enough to add though.

@tomlaf I have also added a 'Last Updated' field with the DateTime of the last event it processed. I'm going to hold off on publishing this change for a little while so I can add a few other things, based upon feedback.

@krutz you shouldn't need to change the execution policy for the remote machine assuming you're on version 5.5ish of ScreenConnect. I can't remember exactly which build we made that change though.

Originally Posted by: bmangeng Go to Quoted Post
I cannot convince it to populate any information in the tabs.

Did you try buying it a beer? Seriously though, if you look at the Command tab is there any return from the Guest machine?

Edited by user Tuesday, January 19, 2016 7:17:34 PM(UTC)  | Reason: Not specified

ScreenConnect Team
thanks 3 users thanked Scott for this useful post.
promptcare on 1/19/2016(UTC), Jesseb on 1/19/2016(UTC), NJH.siii on 2/11/2016(UTC)
promptcare  
#16 Posted : Tuesday, January 19, 2016 8:15:09 PM(UTC)
promptcare


Rank: Advanced Member

Medals: ScreenConnect Advisor: Focus Group MemberLevel 2: Lent a Helping Hand! 10 Thanks!

Joined: 9/14/2011(UTC)
Posts: 351
Location: ON, Canada

Thanks: 28 times
Was thanked: 13 time(s) in 11 post(s)
Awesome, Scott. Thanks for the quick work. I'll keep an eye out later for the update to show.
Added the code into Command Toolbox for now. Looking forward to the eventual integration.
tomlaf  
#17 Posted : Tuesday, January 19, 2016 8:52:04 PM(UTC)
tomlaf


Rank: Member

Medals: ScreenConnect Advisor: Focus Group Member

Joined: 10/28/2015(UTC)
Posts: 40
Canada
Location: Sherbrooke

Was thanked: 1 time(s) in 1 post(s)
@Scott : Thanks you
bmangeng  
#18 Posted : Tuesday, January 19, 2016 9:11:03 PM(UTC)
bmangeng


Rank: Newbie

Joined: 7/21/2014(UTC)
Posts: 5
United States
Location: Nevada

Thanks: 1 times
@promptcare Thanks for that! I had to add a GPO that would allow scripts. Works flawlessly now.
tomlaf  
#19 Posted : Tuesday, January 19, 2016 11:37:37 PM(UTC)
tomlaf


Rank: Member

Medals: ScreenConnect Advisor: Focus Group Member

Joined: 10/28/2015(UTC)
Posts: 40
Canada
Location: Sherbrooke

Was thanked: 1 time(s) in 1 post(s)
@Scott : Idea : Will it be possible to not show the "background" information getting action in the command view, it may be only me, but it adds pages of output, and I do love being able to see the last output and command I use as a tech and not the output of the ps script use by this extension. It may be a detail as to add a "verbose"/"normal" view of the command output so it there if I want.
promptcare  
#20 Posted : Wednesday, January 20, 2016 6:41:21 PM(UTC)
promptcare


Rank: Advanced Member

Medals: ScreenConnect Advisor: Focus Group MemberLevel 2: Lent a Helping Hand! 10 Thanks!

Joined: 9/14/2011(UTC)
Posts: 351
Location: ON, Canada

Thanks: 28 times
Was thanked: 13 time(s) in 11 post(s)
Wow. Updates used to show up within a few hours; been a full day now and nothing.
Scott  
#21 Posted : Thursday, January 21, 2016 2:00:33 PM(UTC)
Scott


Rank: Administration

Medals: Level 4: Wise Old Owl! Received 100 Thanks!

Joined: 3/28/2014(UTC)
Posts: 2,380
United States

Thanks: 3 times
Was thanked: 291 time(s) in 249 post(s)
@tomlaf Originally that was my intention for how the sending/receiving of data should work but it would require some core changes to how certain session events function in order to implement it. So, we're looking at doing that in the near future, perhaps rev 2.0 or the extension, but I'm not completely sure when quite yet.

@promptcare Are you talking about extension updates? I've only pushed 1.1 out so far (fix for IE/Edge display). I've been sitting on 1.2 which contains the other changes I mentioned previously just to include any more suggestions that may come in. I'll probably publish it sometime next week regardless.
ScreenConnect Team
jburroughs  
#22 Posted : Thursday, January 21, 2016 2:16:12 PM(UTC)
jburroughs


Rank: Member

Medals: Level 1: Random Act of Kindness! Received One Thanks!

Joined: 7/30/2014(UTC)
Posts: 17

Was thanked: 3 time(s) in 2 post(s)
I can't express enough how excited my team was to see this functionality added! We were actually working on something very similar, but this is a bit more polished than what we had (: so we just modified this extension a bit to add some more tabs and move some of our PowerShell one-liners into it.

Code:
$RAM = Get-WMIObject Win32_PhysicalMemory | Select DeviceLocator, Manufacturer, Model, Capacity, Speed, PartNumber, SerialNumber ; ForEach ($DIMM in $RAM) {$DIMM.Capacity = [string]($DIMM.Capacity / 1GB) ; $DIMM.Capacity = [decimal]::round($DIMM.Capacity) ; $DIMM.Capacity = ([string]($DIMM.Capacity)) + ' GB'} ; $RAM


UserPostedImage


Working pretty well so far - thanks for putting this together guys!
thanks 1 user thanked jburroughs for this useful post.
rmmccann on 1/21/2016(UTC)
PIN  
#23 Posted : Thursday, January 21, 2016 4:07:32 PM(UTC)
PIN


Rank: Member

Joined: 9/11/2015(UTC)
Posts: 9
Czech Republic
Location: Prague

Thanks: 5 times
Awesome!

I see "Administer" permissions are necessary. Is there a way to customize it?
myers6mm  
#24 Posted : Thursday, January 21, 2016 4:40:13 PM(UTC)
myers6mm


Rank: Advanced Member

Medals: Level 1: Random Act of Kindness! Received One Thanks!

Joined: 9/5/2013(UTC)
Posts: 61
Man
Location: Central Kannsas

Thanks: 26 times
Was thanked: 3 time(s) in 3 post(s)
I'm relay liking this extension!

There does seem to be one issue that I've found. On my Android phone(Note 4) I can't see anything past "Notes" tab in portrait or anything past "Processes" tab in landscape. I see no way of scrolling over to see "software" "Event Log" or "Services" tabs.

I'm running 5.5.10185.5856 on my windows server and 5.5.9981.5815 on my phone.
gjeret  
#25 Posted : Friday, January 22, 2016 11:12:29 PM(UTC)
gjeret


Rank: Member

Joined: 4/9/2013(UTC)
Posts: 13
Man
Location: Milwaukee

I would love the ability to upload/download a file(s) from here as well without fully connecting to the client, I like doing things in the background and the less I need to interrupt the user, the better :)
Scott  
#26 Posted : Tuesday, January 26, 2016 2:37:34 PM(UTC)
Scott


Rank: Administration

Medals: Level 4: Wise Old Owl! Received 100 Thanks!

Joined: 3/28/2014(UTC)
Posts: 2,380
United States

Thanks: 3 times
Was thanked: 291 time(s) in 249 post(s)
I've just uploaded version 1.2 to the Library. As usual, it may take a few days before it'll be live.
Here's a brief changelog for releases:
Version 1.1
-fix for IE/Edge child node enumeration

Version 1.2
-added field to display when last message was processed
-added a column for IdentifyingNumber per result to Software table
-minor code optimization/cleanup



@PIN it shouldn't require Administer permission, just make sure that the Users wanting to use it have the RunCommandOutsideSession permission applying to the correct session groups and owners.

@myers6mm I can see that being a problem, we'll have to perhaps add a scroll button (or something similar) to let it scale better. I'll make sure that gets registered.

@gjeret that would certainly be useful, although a bit out of the scope of for this extension. I'll be sure to add it to my list of other extension ideas, however.
ScreenConnect Team
promptcare  
#27 Posted : Tuesday, January 26, 2016 3:59:00 PM(UTC)
promptcare


Rank: Advanced Member

Medals: ScreenConnect Advisor: Focus Group MemberLevel 2: Lent a Helping Hand! 10 Thanks!

Joined: 9/14/2011(UTC)
Posts: 351
Location: ON, Canada

Thanks: 28 times
Was thanked: 13 time(s) in 11 post(s)
Originally Posted by: Scott Go to Quoted Post
Posted: about an hour ago I've just uploaded version 1.2 to the Library. As usual, it may take a few days before it'll be live.
Already live. Thanks!

ctv99  
#28 Posted : Wednesday, February 10, 2016 2:17:14 PM(UTC)
ctv99


Rank: Newbie

Medals: ScreenConnect Advisor: Focus Group Member

Joined: 4/30/2015(UTC)
Posts: 5

I have Code Snipits To Add

Initializer.js
Code:
/*
Todo:
Uninstall: (Get-WmiObject -Class Win32_Product -Filter "IdentifyingNumber = '{7B5AF017-C01E-49A0-B454-1200F0A94D86}'").Uninstall()
Stop/Start Service:
Stop Process:
*/
SC.util.includeStyleSheet(extensionContext.baseUrl + 'Style.css');
		
SC.event.addGlobalHandler(SC.event.QueryCommandButtons, function (eventArgs) {
	switch (eventArgs.area) {
		case 'HostDetailTabListMore':
			eventArgs.buttonDefinitions.push(
				{commandName: 'Select', commandArgument: 'Processes', text: 'Processes'},
				{commandName: 'Select', commandArgument: 'Software', text: 'Software'},
				{commandName: 'Select', commandArgument: 'EventLog', text: 'Events'},
				{commandName: 'Select', commandArgument: 'Services', text: 'Services'},
				{commandName: 'Select', commandArgument: 'RAM', text: 'Ram Slots'},
				{commandName: 'Select', commandArgument: 'RAM2', text: 'Ram'},
				{commandName: 'Select', commandArgument: 'HDD', text: 'HDD'},
				{commandName: 'Select', commandArgument: 'HDD2', text: 'LDM'},
				{commandName: 'Select', commandArgument: 'BIOS', text: 'BIOS'}
			);
			break;
		case 'ProcessesButtons':eventArgs.buttonDefinitions.push({commandName: 'GetInfo', commandArgument: 'Processes', text: 'Refresh Processes'});
			break;
		case 'SoftwareButtons':eventArgs.buttonDefinitions.push({commandName: 'GetInfo', commandArgument: 'Software', text: 'Refresh Installed Software'});
			break;
		case 'EventLogButtons':eventArgs.buttonDefinitions.push({commandName: 'GetInfo', commandArgument: 'EventLog', text: 'Refresh Recent Events'});
			break;
		case 'ServicesButtons':eventArgs.buttonDefinitions.push({commandName: 'GetInfo', commandArgument: 'Services', text: 'Refresh Services'});
			break;
		case 'RAMButtons':eventArgs.buttonDefinitions.push({commandName: 'GetInfo', commandArgument: 'RAM', text: 'Refresh Ram Information'});
			break;
		case 'RAM2Buttons':eventArgs.buttonDefinitions.push({commandName: 'GetInfo', commandArgument: 'RAM2', text: 'Refresh Ram Information'});
			break;
		case 'HDDButtons':eventArgs.buttonDefinitions.push({commandName: 'GetInfo', commandArgument: 'HDD', text: 'Refresh HDD Information'});
			break;
		case 'HDD2Buttons':eventArgs.buttonDefinitions.push({commandName: 'GetInfo', commandArgument: 'HDD2', text: 'Refresh Logical Disk Information'});
			break;
		case 'BIOSButtons':eventArgs.buttonDefinitions.push({commandName: 'GetInfo', commandArgument: 'HDD2', text: 'Refresh BIOS Information'});
			break;
	}
});

SC.event.addGlobalHandler(SC.event.PreRender, function (eventArgs) {
	SC.command.queryAndAddCommandButtons($('detailTabList'), 'HostDetailTabListMore');
});

SC.event.addGlobalHandler(SC.event.InitializeTab, function (eventArgs) {
	if (isMyTab(eventArgs.tabName))	{
		SC.command.queryAndAddCommandButtons($('detailTabContent'), eventArgs.tabName + 'Buttons');
		SC.ui.addElement($('detailTabContent'), 'DIV', {id: 'lastUpdateContainer'});
		SC.ui.addElement($('detailTabContent'), 'DIV', {id: 'dataContainer'});
		SC.ui.addElement($('detailTabContent'), 'TABLE', {id: 'dataTable'});
	}
});

SC.event.addGlobalHandler(SC.event.RefreshTab, function (eventArgs) {
	if (isMyTab(eventArgs.tabName)) {
		SC.ui.clear($('dataContainer'));
		SC.ui.clear($('lastUpdateContainer'));
		SC.ui.clear($('dataTable'));
		
		SC.ui.findDescendent(
			eventArgs.container, 
			function(e) { 
				return e._commandName == 'GetInfo'; 
			})._commandArgument = { 
				type: eventArgs.tabName, 
				operatingSystemName: eventArgs.session.GuestOperatingSystemName 
			};
			
		displayDiagnosticInformation(
			getLatestDiagnosticEvent(
				eventArgs.sessionDetails, 
				eventArgs.tabName
				), eventArgs.sessionDetails.BaseTime
			);
			
	}
});

SC.event.addGlobalHandler(SC.event.ExecuteCommand, function (eventArgs) {
	switch (eventArgs.commandName){
		case 'GetInfo':
			window.addEventToSessions(
				window.getSessionGroupUrlPart()[0], 
				SC.types.SessionType.Access,
				[window.getSessionUrlPart()], 
				SC.types.SessionEventType.QueuedCommand, 
				null,
				getInputCommand(
					eventArgs.commandArgument.type, 
					eventArgs.commandArgument.operatingSystemName
					),
				false,
				false,
				true
			);
			break;
	}
});

function getInputCommand(diagnosticType, operatingSystem) {
	var headers = getHeaders(operatingSystem);
	headers.DiagnosticType = diagnosticType;
	var commandText = getDiagnosticCommandText(headers);
	
	var emptyLinePrefix = '';
	
	if (headers.Processor == 'sh') 
		emptyLinePrefix = 'echo ';
	else{
		emptyLinePrefix = 'echo ""';
		commandText = "$Host.UI.RawUI.BufferSize = New-Object Management.Automation.Host.Size (500, 25)" + "\n" + commandText;
	}
	
	return  "#!" + headers.shaBang + "\n" +
		"#maxlength=100000" + "\n" +
		"#timeout=90000" + "\n" +
		headers.modifier + "DIAGNOSTIC-RESPONSE/1" + headers.delimiter  + "\n" +
		headers.modifier + "DiagnosticType: " + headers.DiagnosticType + headers.delimiter  + "\n" +
		headers.modifier + "ContentType: " + headers.ContentType + headers.delimiter  + "\n" +
		emptyLinePrefix + "\n" + commandText;
}

function getHeaders(operatingSystem) {
	if (operatingSystem.indexOf("Windows") >= 0 || operatingSystem.indexOf("Server") >= 0) 
		return { Processor: "ps", Interface: "powershell", ContentType: "xml", shaBang: "ps", modifier: "echo \"", delimiter: '\"' };
	else if(operatingSystem.indexOf("Linux") >= 0)
		return { Processor: "sh", Interface: "linux", ContentType: "text", shaBang: "sh",  modifier: "echo ", delimiter: ''};
	else if (operatingSystem.indexOf("Mac") >= 0)
		return { Processor: "sh", Interface: "osx", ContentType: "text", shaBang: "sh", modifier: "echo ", delimiter: ''};
}

function isMyTab(tabName) {
	switch (tabName) {
		case 'Processes':
		case 'Software':
		case 'EventLog':
		case 'RAM':
		case 'RAM2':
		case 'HDD':
		case 'HDD2':
		case 'BIOS':
		case 'Services':
			return true;
		default:
			return false;
	}
}

function isDiagnosticContent(eventData) {
	return eventData.startsWith("DIAGNOSTIC-RESPONSE/1");
}

function getLatestDiagnosticEvent(sessionDetails, diagnosticEventType) {
	return sessionDetails.Connections
			.map(function(c) { return c.Events; })
			.reduce(function(outputArray, events) { Array.prototype.push.apply(outputArray, events); return outputArray; }, [])
			.filter(function(e) { 
				return e.EventType === SC.types.SessionEventType.RanCommand &&
					isDiagnosticContent(e.Data) &&
					parseDataHeaders(e.Data).DiagnosticType.trim() == diagnosticEventType;
			})
			.sort(function (x, y) { return x.Time - y.Time; })
			[0];
}

function parseDataHeaders(eventData) {
	var currentIndex = 0;
	var headers = {};
	var isStatusLine = true;
	
	while (true) {
		var nextNewLineIndex = eventData.indexOf('\n', currentIndex);
		
		if (isStatusLine) {
			isStatusLine = false;
		} else if (nextNewLineIndex == currentIndex + 2 || nextNewLineIndex < 0) {
			break;
		} else {
			var lineParts = eventData.substring(currentIndex, nextNewLineIndex).split(': ');
			headers[lineParts[0]] = lineParts[1];
		}
		currentIndex = nextNewLineIndex + 1;
	}
	return headers;
}

function displayDiagnosticInformation(latestDiagnosticEvent, baseTime) {
	var headers = parseDataHeaders(latestDiagnosticEvent.Data);
	
	if (headers.ContentType.trim() == 'xml')
		displayDataXml(getEventDataXml(latestDiagnosticEvent.Data));
	else
		displayDataText(getEventDataText(latestDiagnosticEvent.Data));
		
	
	$('lastUpdateContainer').innerHTML = "Last Updated: " + new Date(latestDiagnosticEvent.Time + baseTime);
//	var d = new Date();
//	$('lastUpdateContainer').innerHTML = "Last Updated: " + timeDifference(d.getTime(),new Date(latestDiagnosticEvent.Time + baseTime));
}

function getEventDataXml(eventData) {
	return parseXml(eventData.substring(eventData.indexOf('<?xml'), eventData.length));
}

function displayDataXml(xml) {
	var x = xml.getElementsByTagName("Object");
	var iterationLength = 0;
	
	try {
		iterationLength = x[0].children.length;
	} catch(error) {
		iterationLength = x[0].childNodes.length;
	}
	
	//because IE/Edge are dumb
	if (isUsingInternetExplorerOrEdge())
	{
		for (j = 0; j < iterationLength; j++)
		{
			var child = x[0].childNodes[j];
	    	if (child.nodeType !== 1) continue;
	    
			SC.ui.addElement($('dataTable'), 'th', {id: 'dataTableHeader', innerHTML: x[0].childNodes[j].attributes.Name.nodeValue});
		}
		
		for (i = 0; i < x.length; i++) 
		{
			SC.ui.addElement($('dataTable'), 'tr', {id: 'dataRow' + i});
			
			for (j = 0; j < x[i].childNodes.length; j++)
			{
				var childX = x[i].childNodes[j];
	    		if (childX.nodeType !== 1) continue;
				SC.ui.addElement($('dataRow' + i), 'td', {id: 'dataTableData', innerHTML: x[i].childNodes[j].textContent});
			}
		}
	}
	else
	{
		for (j = 0; j < x[0].children.length; j++)
		{
			if (x[0].children[j].attributes.Name.nodeValue == "Description")
			SC.ui.addElement($('dataTable'), 'th', {id: 'dataTableHeader', innerHTML: '%Free'});
			else
			SC.ui.addElement($('dataTable'), 'th', {id: 'dataTableHeader', innerHTML: x[0].children[j].attributes.Name.nodeValue});
			}
	
		for (i = 0; i < x.length; i++) 
		{
			SC.ui.addElement($('dataTable'), 'tr', {id: 'dataRow' + i});
			
			for (j = 0; j < x[i].children.length; j++)
			{
				SC.ui.addElement($('dataRow' + i), 'td', {id: 'dataTableData', innerHTML: x[i].children[j].innerHTML});
			}
		}
	}
}

function getEventDataText(eventData) {
	return parseText(
		eventData
			.split('\n')
			.splice(3, eventData.length)
			.join('\n')
		);
}

function displayDataText(eventData) {
	for (var category in eventData[0]) {
			SC.ui.addElement($('dataTable'), 'th', {id: 'dataTableHeader', innerHTML: category});
	}
	for (var i = 0; i < eventData.length; i++) {
		SC.ui.addElement($('dataTable'), 'tr', {id: 'dataRow' + i});
		for (var item in eventData[i]) {
			SC.ui.addElement($('dataRow' + i), 'td', {id: 'dataTableData', innerHTML: eventData[i][item]});
		}
	}
}

function parseXml(xml) {
   var dom = null;
   if (window.DOMParser) {
      try { 
         dom = (new DOMParser()).parseFromString(xml, "text/xml"); 
      } 
      catch (e) { dom = null; }
   }
   else if (window.ActiveXObject) {
      try {
         dom = new ActiveXObject('Microsoft.XMLDOM');
         dom.async = false;
         if (!dom.loadXML(xml)) // parse error ..
            window.alert(dom.parseError.reason + dom.parseError.srcText);
      } 
      catch (e) { dom = null; }
   }
   else
      alert("cannot parse xml string!");
   return dom;
}

function parseText (data) {
	var lines=data.split('\n');
	var result = [];
 	
 	var headers=lines[1].split(',');
 
	for(var i=3;i<lines.length;i++){
		var obj = {};
		var currentline=lines[i].split(",");
 
		for(var j=0;j<headers.length;j++){
			obj[headers[j]] = currentline[j];
		}
		result.push(obj);
	}
	return result; 
}

function isUsingInternetExplorerOrEdge() {
	var ua = window.navigator.userAgent;
	var msie = ua.indexOf("Trident");
	
	if (ua.indexOf("Trident") > 0 || ua.indexOf("Edge") > 0)
		return true;
	else
		return false;
}

//ripped directly from http://stackoverflow.com/questions/6108819/javascript-timestamp-to-relative-time-eg-2-seconds-ago-one-week-ago-etc-best
function timeDifference(current, previous) {
    var msPerMinute = 60 * 1000;
    var msPerHour = msPerMinute * 60;
    var msPerDay = msPerHour * 24;
    var msPerMonth = msPerDay * 30;
    var msPerYear = msPerDay * 365;

    var elapsed = current - previous;

    if (elapsed < msPerMinute) 
         return Math.abs(Math.round(elapsed/1000)) + ' seconds ago';   
    else if (elapsed < msPerHour) 
         return Math.round(elapsed/msPerMinute) + ' minutes ago';   
    else if (elapsed < msPerDay ) 
         return Math.round(elapsed/msPerHour ) + ' hours ago';   
    else if (elapsed < msPerMonth) 
        return 'approximately ' + Math.round(elapsed/msPerDay) + ' days ago';   
    else if (elapsed < msPerYear) 
        return 'approximately ' + Math.round(elapsed/msPerMonth) + ' months ago';   
    else 
        return 'approximately ' + Math.round(elapsed/msPerYear ) + ' years ago';   
}

function getDiagnosticCommandText(headers) {
	switch (headers.Processor + '/' + headers.Interface + '/' + headers.ContentType + '/' + headers.DiagnosticType)
	{
		
		case "ps/powershell/xml/Processes": return "Get-Process | select ProcessName, Id, NPM, PM, WS, VM | Sort ProcessName | ConvertTo-Xml -As Stream";
		case "ps/powershell/xml/EventLog": return "Get-EventLog system -newest 100 | Select TimeWritten, EntryType, Source, Message | Sort TimeWritten -Descending | ConvertTo-Xml -As Stream";
		case "ps/powershell/xml/Services": return "Get-Service | select displayName, Name, Status | Sort DisplayName  | ConvertTo-Xml -As Stream";
		case "ps/powershell/xml/Software": return "Get-WmiObject -Class Win32_Product | Select Name, Vendor, Version, IdentifyingNumber | Sort Name | ConvertTo-Xml -As Stream";
		case "ps/powershell/xml/RAM": return "Get-WmiObject -Class win32_PhysicalMemoryArray | select MemoryDevices | sort MemoryDevices | ConvertTo-Xml -As Stream";
		case "ps/powershell/xml/RAM2": return "$RAM = Get-WMIObject Win32_PhysicalMemory | Select Tag, Manufacturer, Model, Capacity, Speed, SerialNumber ; ForEach ($DIMM in $RAM) {$DIMM.Capacity = [string]($DIMM.Capacity / 1GB) ; $DIMM.Capacity = [decimal]::round($DIMM.Capacity) ; $DIMM.Capacity = ([string]($DIMM.Capacity)) + ' GB'} ; $RAM | ConvertTo-Xml -As StreaM";
		case "ps/powershell/xml/HDD": return "$HDD = Get-WMIObject win32_diskdrive | Select Caption,name,serialnumber,size ; ForEach ($HD in $HDD) {$HD.Size = [string]($HD.Size / 1GB) ; $HD.Size = [decimal]::round($HD.Size) ; $HD.Size = ([string]($HD.Size)) + ' GB'} ; $HDD| ConvertTo-Xml -As StreaM";
		case "ps/powershell/xml/HDD2": return "$HDD = Get-WMIObject Win32_logicaldisk |?{$_.drivetype -eq 3} | select deviceid,VolumeName,Size,FreeSpace,Description,filesystem; ForEach ($HD in $HDD) { $HD.Size = [string]($HD.Size / 1GB) ; $HD.Size = [decimal]::round($HD.Size) ; $HD.FreeSpace = [string]($HD.FreeSpace / 1GB) ; $HD.FreeSpace = [decimal]::round($HD.FreeSpace) ; $HD.Description =[string]( [decimal]::round(($HD.FreeSpace/$HD.Size) * 100)) + '%' ; $HD.Size = ([string]($HD.Size)) + ' GB' ; $HD.FreeSpace = ([string]($HD.FreeSpace)) + ' GB'}; $HDD| ConvertTo-Xml -As StreaM";
		case "ps/powershell/xml/BIOS": return "Get-WMIObject Win32_ComputerSystem | select Manufacturer,Model,Status,BootupState | Sort Manufacturer | ConvertTo-Xml -As Stream";
		
		case "sh/linux/text/Processes": return "ps -eo \"%U,%p,%x,%C,%c\"";
		case "sh/linux/text/EventLog": return "echo " + headers.DiagnosticType + " ; dmesg -T | tail -25";
		case "sh/linux/text/Services": return "echo " + headers.DiagnosticType + " ; ls /etc/init.d";
		case "sh/linux/text/Software": return "echo " + headers.DiagnosticType + " ; dpkg --get-selections";
		
		case "sh/osx/text/Processes": return "ps -eo \"pid,%cpu,command\"";
		case "sh/osx/text/EventLog": return "echo " + headers.DiagnosticType + " ; syslog -C";
		case "sh/osx/text/Services": return "echo " + headers.DiagnosticType + " ; launchctl list";
		case "sh/osx/text/Software": return "echo " + headers.DiagnosticType + " ; ls /Applications";
    	default: throw "unknown os";
	}
}



Style.css
Code:
#detailTabContent.Processes, 
#detailTabContent.Software, 
#detailTabContent.Services,
#detailTabContent.RAM,
#detailTabContent.RAM2,
#detailTabContent.HDD,
#detailTabContent.HDD2,
#detailTabContent.BIOS,
#detailTabContent.EventLog {
	text-align:center;
}

#detailTabContent.Processes > table, 
#detailTabContent.Software > table, 
#detailTabContent.Services > table,
#detailTabContent.RAM > table,
#detailTabContent.RAM2 > table,
#detailTabContent.HDD > table,
#detailTabContent.HDD2 > table,
#detailTabContent.BIOS > table,
#detailTabContent.EventLog > table {
	text-align:left;
	max-width:100%;
	margin-left: auto; 
	margin-right: auto;
}


#detailTabContent.Processes > table {
	table-layout:fixed;
}

#diagnosticButton{
	width:100%;
}

#dataTableHeader, #dataTableData{
	border:1px solid #b4b4b4;
	padding:3px;
}
teksigns  
#29 Posted : Thursday, February 11, 2016 3:30:20 AM(UTC)
teksigns


Rank: Advanced Member

Medals: Bug Buster Level Two: Bugs are more afraid of you than you are of them...ScreenConnect Advisor: Focus Group MemberLevel 2: Lent a Helping Hand! 10 Thanks!

Joined: 6/20/2011(UTC)
Posts: 443
United States
Location: Salisbury, NC (Aka: Gurusonwheels)

Thanks: 17 times
Was thanked: 13 time(s) in 12 post(s)
Originally Posted by: ctv99 Go to Quoted Post
I have Code Snipits To Add



tried out your code . ram is reported wrong .

wrong sizes reported .


joncz  
#30 Posted : Friday, March 4, 2016 7:02:13 PM(UTC)
joncz


Rank: Newbie

Medals: Level 1: Random Act of Kindness! Received One Thanks!

Joined: 8/13/2014(UTC)
Posts: 13
United States
Location: Atlanta

Thanks: 2 times
Was thanked: 1 time(s) in 1 post(s)
Originally Posted by: Scott Go to Quoted Post
@promptcare I just added a column for IdentifyingNumber to the installed software table which should kick out a Guid per Win32 object. You can use the following command to uninstall the object after the Guid is known:

Code:

#!ps 
#maxlength=100000 
#timeout=90000
(Get-WmiObject -Class Win32_Product -Filter "IdentifyingNumber = '{F1032F2B-1775-4A9F-A39A-A6D1CDFAC7E0}'").Uninstall()


Eventually this will be baked into the extension along with the ability to start/stop services and perhaps kill a proc. I had intended to do services and process in rev2, but I didn't even consider Uninstalling software, easy enough to add though.


Querying Win32_Product does a verification of all installed applications - every time you call it.

http://blogs.technet.com/b/askds/archive/2012/04/19/how-to-not-use-win32-product-in-group-policy-filtering.aspx

http://gregramsey.net/2012/02/20/win32_product-is-evil/

-Jon
ebell  
#31 Posted : Thursday, April 7, 2016 10:01:18 PM(UTC)
ebell


Rank: Member

Medals: Level 1: Random Act of Kindness! Received One Thanks!

Joined: 5/13/2014(UTC)
Posts: 13
United States
Location: Houston, Texas

Thanks: 12 times
Was thanked: 5 time(s) in 3 post(s)
I've always used the following to uninstall via WMI at CLI:

Code:
#maxlength=100000
#timeout=90000
wmic product where name="Java 8 Update 71" call uninstall /nointeractive
arnelj@solunetcorp.com  
#32 Posted : Thursday, May 5, 2016 1:59:38 PM(UTC)
arnelj@solunetcorp.com


Rank: Newbie

Joined: 2/3/2015(UTC)
Posts: 20
United States
Location: IL

Hi, just wondering I started using this diagnostic extension.

I notice the eventlog is only showing 10 line items. Is that all it is capable of showing?

Regards,
Arnel
Scott  
#33 Posted : Tuesday, May 10, 2016 1:09:14 PM(UTC)
Scott


Rank: Administration

Medals: Level 4: Wise Old Owl! Received 100 Thanks!

Joined: 3/28/2014(UTC)
Posts: 2,380
United States

Thanks: 3 times
Was thanked: 291 time(s) in 249 post(s)
It's certainly capable of showing more, 10 was just simplest at the time. I've made an update to the Extension to allow the count to be configurable within reason, but I'll have to do some testing to find out the upper limit.

There's a few other changes I want to make so no ETA, but keep an eye out for the next release.
ScreenConnect Team
arnelj@solunetcorp.com  
#34 Posted : Tuesday, May 10, 2016 1:46:44 PM(UTC)
arnelj@solunetcorp.com


Rank: Newbie

Joined: 2/3/2015(UTC)
Posts: 20
United States
Location: IL

Ok, thanks looking forward to update.

Question the event log which log is it specifically pulling?
Scott  
#35 Posted : Tuesday, May 10, 2016 1:48:32 PM(UTC)
Scott


Rank: Administration

Medals: Level 4: Wise Old Owl! Received 100 Thanks!

Joined: 3/28/2014(UTC)
Posts: 2,380
United States

Thanks: 3 times
Was thanked: 291 time(s) in 249 post(s)
It's basically running the following command to pull from the Application log within the Event Viewer:

Code:

"Get-EventLog Application -newest " + getValidEventLogCount() + " | Select TimeWritten, EntryType, Source, Message | Sort TimeWritten -Descending | ConvertTo-Xml -As Stream";
ScreenConnect Team
Dread73  
#36 Posted : Thursday, June 30, 2016 2:36:53 AM(UTC)
Dread73


Rank: Guest

Joined: 6/30/2016(UTC)
Posts: 1
Australia
Location: Brisbane

Having an issue with this extension.

When I am in the All Machines Session Group, I select a Workstation, got to the Processes Tab (as an example) and click Refresh Processes I get: Session group 'A' does not exist. Tried various PC's and the other Tabs ie Event Log Services etc - all with the same error message.

My Workstations are in a number of Session Groups that I have created (I have arranged my Session Groups using a Note unique to each group of Workstations) and when I go into a session group and repeat the process of going into Processes or Software or Event Log and click the Refresh command I get: Session group 'A' does not exist - but A now becomes the first letter of the Session Group I am curently in.

For example, if I am in the Finance Session Group, the error becomes: Session group 'F' does not exist
Management Session Group: Session group 'M' does not exist

and so on for each different Session Group I have.

I have tried using Chrome and IE 10 and it happens on both, also tried uninstalling and re-installing the extension.

Any ideas would be appreciated :)
Scott  
#37 Posted : Thursday, June 30, 2016 12:56:24 PM(UTC)
Scott


Rank: Administration

Medals: Level 4: Wise Old Owl! Received 100 Thanks!

Joined: 3/28/2014(UTC)
Posts: 2,380
United States

Thanks: 3 times
Was thanked: 291 time(s) in 249 post(s)
What version of ScreenConnect are you using?
ScreenConnect Team
mehmetalidemirci@gm-bilisim.com  
#38 Posted : Wednesday, July 13, 2016 6:42:55 AM(UTC)
mehmetalidemirci@gm-bilisim.com


Rank: Newbie

Joined: 2/22/2016(UTC)
Posts: 4
Turkey
Location: Bodrum

not working with the version 6.0.11033.6032
mehmetalidemirci@gm-bilisim.com  
#39 Posted : Saturday, July 30, 2016 6:15:30 AM(UTC)
mehmetalidemirci@gm-bilisim.com


Rank: Newbie

Joined: 2/22/2016(UTC)
Posts: 4
Turkey
Location: Bodrum

not working with the version 6.0.11113.6039
promptcare  
#40 Posted : Tuesday, August 2, 2016 5:14:20 PM(UTC)
promptcare


Rank: Advanced Member

Medals: ScreenConnect Advisor: Focus Group MemberLevel 2: Lent a Helping Hand! 10 Thanks!

Joined: 9/14/2011(UTC)
Posts: 351
Location: ON, Canada

Thanks: 28 times
Was thanked: 13 time(s) in 11 post(s)
mehmetalidemirci@gm-bilisim.com -- you can't honestly expect an extension to be working with a version of SC that hasn't even been released yet, can you?
jnelson@abmpc.com  
#41 Posted : Wednesday, August 3, 2016 5:58:48 PM(UTC)
jnelson@abmpc.com


Rank: Guest

Joined: 8/3/2016(UTC)
Posts: 1
United States
Location: California

Can't get it to run correctly on 5.6.10957


Administrator

08-03 10:53:45

#!ps
#maxlength=100000
#timeout=90000
echo "DIAGNOSTIC-RESPONSE/1"
echo "DiagnosticType: Processes"
echo "ContentType: xml"
echo ""
$Host.UI.RawUI.BufferSize = New-Object Management.Automation.Host.Size (500, 25)
Get-Process | select ProcessName, Id, NPM, PM, WS, VM | Sort ProcessName | ConvertTo-Xml -As Stream
[X]

Guest

08-03 10:53:45



C:\Windows\system32>echo "DIAGNOSTIC-RESPONSE/1"

"DIAGNOSTIC-RESPONSE/1"



C:\Windows\system32>echo "DiagnosticType: Processes"

"DiagnosticType: Processes"



C:\Windows\system32>echo "ContentType: xml"

"ContentType: xml"



C:\Windows\system32>echo ""

""



C:\Windows\system32>$Host.UI.RawUI.BufferSize = New-Object Management.Automation.Host.Size (500, 25)

'$Host.UI.RawUI.BufferSize' is not recognized as an internal or external command,

operable program or batch file.



'Get-Process' is not recognized as an internal or external command,

operable program or batch file.

C:\Windows\system32>Get-Process | select ProcessName, Id, NPM, PM, WS, VM | Sort ProcessName | ConvertTo-Xml -As Stream

mehmetalidemirci@gm-bilisim.com  
#42 Posted : Saturday, August 6, 2016 12:13:22 PM(UTC)
mehmetalidemirci@gm-bilisim.com


Rank: Newbie

Joined: 2/22/2016(UTC)
Posts: 4
Turkey
Location: Bodrum

promptcare -- i have just stated that its not working... without bothering or complaining.

Offcourse i do not expect fully functional with the latest release candidate release...
Scott  
#43 Posted : Tuesday, August 9, 2016 12:59:42 PM(UTC)
Scott


Rank: Administration

Medals: Level 4: Wise Old Owl! Received 100 Thanks!

Joined: 3/28/2014(UTC)
Posts: 2,380
United States

Thanks: 3 times
Was thanked: 291 time(s) in 249 post(s)
Thanks for letting me know about the issue, I've actually "fixed" the Extension twice but we keep changing a very minor detail with the 6.0 UI that I have to address each time. I believe this latest change is going to be the last so keep an eye out for an update soon.
ScreenConnect Team
tomlaf  
#44 Posted : Thursday, August 18, 2016 10:14:57 PM(UTC)
tomlaf


Rank: Member

Medals: ScreenConnect Advisor: Focus Group Member

Joined: 10/28/2015(UTC)
Posts: 40
Canada
Location: Sherbrooke

Was thanked: 1 time(s) in 1 post(s)
Good day
Just updated to the stable 6.0 version and the extension is not showing up in the interface at all.
Do you have an update going up to fix it ?
Scott  
#45 Posted : Friday, August 19, 2016 1:15:23 PM(UTC)
Scott


Rank: Administration

Medals: Level 4: Wise Old Owl! Received 100 Thanks!

Joined: 3/28/2014(UTC)
Posts: 2,380
United States

Thanks: 3 times
Was thanked: 291 time(s) in 249 post(s)
@tomlaf an updated version of the Extension has been released, was held up in QA. Look for version 1.3.2.
ScreenConnect Team
promptcare  
#46 Posted : Thursday, September 15, 2016 4:56:32 AM(UTC)
promptcare


Rank: Advanced Member

Medals: ScreenConnect Advisor: Focus Group MemberLevel 2: Lent a Helping Hand! 10 Thanks!

Joined: 9/14/2011(UTC)
Posts: 351
Location: ON, Canada

Thanks: 28 times
Was thanked: 13 time(s) in 11 post(s)
Is there any possibility to filter the recent Events to show only Critical and Error messages? Pretty much every time I've tried to use this, it shows me a handful of pretty useless Information events. Sure, it's good to know that Notepad loaded fine but....
RjAus  
#47 Posted : Monday, October 17, 2016 1:55:40 AM(UTC)
RjAus


Rank: Guest

Joined: 10/4/2016(UTC)
Posts: 5
Australia

Thanks: 1 times
I don't know if it's just me, but my RSD seems to be not working after the Win 10 Anniversary updates (10.0.14393).
The RSD queries are sent and received, but I am only receiving the following back:

DIAGNOSTIC-RESPONSE/1
DiagnosticType: Services
ContentType: xml

I have also reset Set-ExecutionPolicy RemoteSigned in Powershell.

RSD was operational on the PC's prior to the anniversary update.

Scott  
#48 Posted : Monday, October 17, 2016 12:55:44 PM(UTC)
Scott


Rank: Administration

Medals: Level 4: Wise Old Owl! Received 100 Thanks!

Joined: 3/28/2014(UTC)
Posts: 2,380
United States

Thanks: 3 times
Was thanked: 291 time(s) in 249 post(s)
@RJAus with the Anniversary Update to Windows 10, Microsoft effectively broke how we shabang commands directly to powershell from our simulated shell, which broke how that extension retrieves information from remote machines.

It's a registered issue that we've implemented a workaround for which should be included in 6.1, the current internal pre-release.
ScreenConnect Team
PeopleInNeed  
#49 Posted : Friday, October 21, 2016 8:08:10 AM(UTC)
PeopleInNeed


Rank: Newbie

Joined: 6/13/2016(UTC)
Posts: 10
Czech Republic
Location: Prague

Thanks: 2 times
Hello. I upgraded my legacy ScreenConnect to 6.0.11622.6115 and Remote System Diagnostics worked as great as usual. Than I upgraded the extension to ersion 1.3.4 and now the icons are all broken (actually completely missing, there is only couple of frames where icons used to be).

Thanks for the future fix.
Scott  
#50 Posted : Tuesday, October 25, 2016 1:03:54 PM(UTC)
Scott


Rank: Administration

Medals: Level 4: Wise Old Owl! Received 100 Thanks!

Joined: 3/28/2014(UTC)
Posts: 2,380
United States

Thanks: 3 times
Was thanked: 291 time(s) in 249 post(s)
@PeopleInNeed what other extensions do you have installed? Also, can you post a screenshot of the behavior you're seeing?

@promptcare for some reason I thought I had already responded to your previous query but I guess not, sorry! There isn't a simple way to do this, but you could always clone the extension and then modify the new Initializer.js. The command can be found around line 354 (roughly):

Code:

case "ps/powershell/xml/EventLog": return "Get-EventLog Application -newest " + getValidEventLogCount() + " | Select TimeWritten, EntryType, Source, Message | Sort TimeWritten -Descending | ConvertTo-Xml -As Stream";


Modify it to:
Code:

case "ps/powershell/xml/EventLog": return "Get-EventLog Application -newest -EntryType Error " + getValidEventLogCount() + " | Select TimeWritten, EntryType, Source, Message | Sort TimeWritten -Descending | ConvertTo-Xml -As Stream";


Which will only filter the Error entries. I will look at incorporating this into a future revision if there's a clean way to do it.
ScreenConnect Team
Users browsing this topic
2 Pages12>
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.