Perfected how handling an exit command is determined.
Also removed a command to execute an "exit" command on the client
because we call "this.Close()". On FormClosing(object,
FormClosingEventArgs), we send an "exit" command anyways. Two of them
should not be sent to close the client's shell...
Added an "IsError" property to the ShellCommandResponse to denote if the
response should be handled a certain way (if it is a response to a
ShellCommand error, then print it differently).
Also correctly queues up two different threads on shell initialization.
These ManualResetEvents now will signal the Shell's redirected output to
handle either the output, or the error output. Not at the same time
(will cause deadlocking).
We now append the text instead of concatenating. Not sure how much more
efficient this is, but it is certainly more readable.
only try to remove upnp settings if the server is listening, if you have this checked, closing the form will stall for a second or two even if the server is not listening
Instead of wasting lots of time creating a string from a char array,
creating a string from another char array, concatenating them both into
a new string, and casting the keychar to a string to see if the string
contains it, make the operation natural and very efficient by creating a
new char array that has both invalid characters and making sure the
illegal character array does not contain the element.
Now we actually use the ListViewItem object we create on every iteration
instead of creating one and only passing the string property value. ~38%
speed increase each iteration on DEBUG and RELEASE configurations.
<h1>Reproduction of the issue</h1>
- Open up a keylogger form and make sure no entries are selected.
- Invoke the "ItemActivate" method by pressing enter.
- Since no items are selected, it cannot index the 0th item of lstLogs' SelectedItems, causing an exception that is uncaught and crashes the server.
Ignore renaming types that implement interfaces.
I hope this is the correct way to do this, I couldn't find a way to find
a specific interface to exclude from obfuscation
Changing the way was used to calculate send/received data by reverse
proxy
-This change will view the value with decimal point (2 num) to make the
values more accurate
-Changing the func name used from "GetFileSize" to "GetDataSize" ( Found
in xServer.Core.Helper )