tig / mcec Goto Github PK
View Code? Open in Web Editor NEWRobust remote control of Windows PCs over the network.
Home Page: https://tig.github.io/mcec/
License: MIT License
Robust remote control of Windows PCs over the network.
Home Page: https://tig.github.io/mcec/
License: MIT License
Hello,
I was looking a long time for a program like this and will integrate it to control a PC from my Loxone server.
One feature suggestion: the projects https://github.com/rvaiya/warpd and https://github.com/EsportToys/TPMouse offer an interesting way of controlling the mouse cursor, particularly applicable when using an input that does not repeat well. I have not yet tried if these tools work alongside mcec, such functionality native in mcec would be useful.
J.
Describe the bug
I'm trying to use MCEC as a serial server listening for commands from a serial port, it works fine on my old windows 7 box but not on a windows 10 machine.
2022-04-02 16:47:53,711 INFO - Serial: Starting...
2022-04-02 16:47:53,711 INFO - SerialServer: Opening port: COM1 9600 baud N81 None
2022-04-02 16:47:53,726 INFO - SerialServer: Waiting for commands on ...
2022-04-02 16:47:54,898 INFO - You are running the most recent version
The status window shows that it's opening the serial port and waiting for commands, but when I send command through the port nothing happens, and I exited it out (it refuses to exit until a force kill from task manager) and check the logs only to find it's flooded with tens of thousands of exceptions 2022-04-02 18:08:06,352 DEBUG - SerialServer: Exception: Thread was being aborted.
and there are also MCEControl.log.1
and MCEControl.log.2
and so on files generated.
To Reproduce
Steps to reproduce the behavior:
%APPDATA%\Kindel Systems\MCE Controller
Expected behavior
It should respond to serial port messages but not.
It should exit out cleanly.
It should not flood the log with exceptions
Version Information
Include the first line from the log window, like this:
2022-04-02 17:47:35,927 INFO - MCE Controller v2.2.10.2 - OS: Microsoft Windows NT 10.0.19044.0 on x64 - .NET: 4.0.30319.42000
Snippets from the log
2022-04-02 18:07:58,196 DEBUG - ------ START: v2.2.10.2 - OS: Microsoft Windows NT 10.0.19044.0 on x64 - .NET: 4.0.30319.42000 ------
2022-04-02 18:07:58,321 INFO - MCE Controller v2.2.10.2 - OS: Microsoft Windows NT 10.0.19044.0 on x64 - .NET: 4.0.30319.42000
2022-04-02 18:07:58,367 INFO - Settings: Loaded settings from C:\Users\username\AppData\Roaming\Kindel Systems\MCE Controller\MCEControl.settings
2022-04-02 18:07:58,604 INFO - Logger: Logging to C:\Users\username\AppData\Roaming\Kindel Systems\MCE Controller\MCEControl.log
2022-04-02 18:07:58,618 INFO - Telemetry: Disabled
2022-04-02 18:07:58,649 INFO - CommandInvoker: 303 built-in commands defined
2022-04-02 18:07:58,649 INFO - SerializedCommands: Loading user-defined commands from C:\Users\username\AppData\Roaming\Kindel Systems\MCE Controller\MCEControl.commands
2022-04-02 18:07:58,649 ERROR - SerializedCommands: C:\Users\username\AppData\Roaming\Kindel Systems\MCE Controller\MCEControl.commands was not found
2022-04-02 18:07:58,696 INFO - CommandInvoker: 0 commands enabled (303 commands disabled).
2022-04-02 18:07:58,696 INFO - CommandFileWatcher: Watching C:\Users\username\AppData\Roaming\Kindel Systems\MCE Controller\MCEControl.commands for changes
2022-04-02 18:07:58,696 INFO - Server: Starting...
2022-04-02 18:07:58,711 DEBUG - SocketServer - Binding to IP address: 0.0.0.0:5150
2022-04-02 18:07:58,711 DEBUG - _mainSocket.Listen
2022-04-02 18:07:58,730 INFO - SocketServer: Started on port 5150
2022-04-02 18:07:58,730 INFO - SocketServer: Waiting for a client to connect
2022-04-02 18:07:58,740 INFO - Serial: Starting...
2022-04-02 18:07:58,742 DEBUG - Opening serial port: COM1 9600 baud N81 None
2022-04-02 18:07:58,742 INFO - SerialServer: Opening port: COM1 9600 baud N81 None
2022-04-02 18:07:58,742 DEBUG - Serial Read thread starting: COM1 9600 baud N81 None
2022-04-02 18:07:58,742 INFO - SerialServer: Waiting for commands on ...
2022-04-02 18:07:58,774 DEBUG - Checking for new release...
2022-04-02 18:07:59,259 DEBUG - SerialServer: TimeoutException
2022-04-02 18:07:59,774 DEBUG - SerialServer: TimeoutException
2022-04-02 18:07:59,790 DEBUG - The latest release is tagged at v2.2.10.2 and is named 'MCE Controller Version 2.2.10'. Download Url: https://github.com/tig/mcec/releases/download/v2.2.10.2/MCEController.Setup.exe
2022-04-02 18:07:59,813 INFO - You are running the most recent version
2022-04-02 18:08:00,288 DEBUG - SerialServer: TimeoutException
2022-04-02 18:08:00,789 DEBUG - SerialServer: TimeoutException
2022-04-02 18:08:01,291 DEBUG - SerialServer: TimeoutException
2022-04-02 18:08:01,803 DEBUG - SerialServer: TimeoutException
2022-04-02 18:08:02,308 DEBUG - SerialServer: TimeoutException
2022-04-02 18:08:02,826 DEBUG - SerialServer: TimeoutException
2022-04-02 18:08:03,334 DEBUG - SerialServer: TimeoutException
2022-04-02 18:08:03,855 DEBUG - SerialServer: TimeoutException
2022-04-02 18:08:04,374 DEBUG - SerialServer: TimeoutException
2022-04-02 18:08:04,900 DEBUG - SerialServer: TimeoutException
2022-04-02 18:08:05,415 DEBUG - SerialServer: TimeoutException
2022-04-02 18:08:05,928 DEBUG - SerialServer: TimeoutException
2022-04-02 18:08:06,182 INFO - Exiting app...
2022-04-02 18:08:06,196 INFO - ActivityMonitor: Stop
2022-04-02 18:08:06,196 INFO - Server: Stopping...
2022-04-02 18:08:06,196 DEBUG - SocketServer Stop
2022-04-02 18:08:06,196 DEBUG - SocketServer disposing...
2022-04-02 18:08:06,212 DEBUG - SocketServer OnClientConnect
2022-04-02 18:08:06,212 INFO - SocketServer: Stopped
2022-04-02 18:08:06,212 INFO - Serial: Stopping...
2022-04-02 18:08:06,212 DEBUG - Serial Server Stop
2022-04-02 18:08:06,212 DEBUG - SerialServer: IOException: The I/O operation has been aborted because of either a thread exit or an application request.
2022-04-02 18:08:06,289 DEBUG - SerialServer: Exception: Thread was being aborted.
2022-04-02 18:08:06,305 INFO - SerialServer: Stopped
2022-04-02 18:08:06,321 INFO - Settings: Wrote settings to C:\Users\username\AppData\Roaming\Kindel Systems\MCE Controller\MCEControl.settings
2022-04-02 18:08:06,336 INFO - Closing Main Window...
2022-04-02 18:08:06,336 DEBUG - SerialServer: Exception: Thread was being aborted.
2022-04-02 18:08:06,336 INFO - CommandFileWatcher: Stopped watching C:\Users\username\AppData\Roaming\Kindel Systems\MCE Controller\MCEControl.commands for changes
2022-04-02 18:08:06,336 DEBUG - SerialServer: Exception: Thread was being aborted.
2022-04-02 18:08:06,352 DEBUG - SerialServer: Exception: Thread was being aborted.
2022-04-02 18:08:06,352 DEBUG - SerialServer: Exception: Thread was being aborted.
2022-04-02 18:08:06,352 DEBUG - SerialServer: Exception: Thread was being aborted.
2022-04-02 18:08:06,352 DEBUG - SerialServer: Exception: Thread was being aborted.
2022-04-02 18:08:06,352 DEBUG - SerialServer: Exception: Thread was being aborted.
2022-04-02 18:08:06,352 DEBUG - SerialServer: Exception: Thread was being aborted.
2022-04-02 18:08:06,352 DEBUG - SerialServer: Exception: Thread was being aborted.
2022-04-02 18:08:06,352 DEBUG - SerialServer: Exception: Thread was being aborted.
2022-04-02 18:08:06,367 DEBUG - SerialServer: Exception: Thread was being aborted.
2022-04-02 18:08:06,367 DEBUG - SerialServer: Exception: Thread was being aborted.
... (repeat lines omitted)
I was wondering if it was possible to map, say the mypictures
command to Alt+Tab so I could cycle through open programs...
We'd like to pass a unique URL from Crestron to the PC via RS-232 and open up a web browser with the passed URL. Are you aware of any way to accomplish this via your program? Thanks!
I'm designing a Crestron-based RS-232 control system, and am looking to install MCEC to monitor for serial commands. The TCP/IP features will cause MCEC to be flagged by the client's network security team, so I'm requesting a version of MCEC with only serial monitoring capability.
Hello,
Thanks for this very useful software!
We would like to start MCEControl with highest possible privileges regardless of the currently logged in user. I guess this could be achieved by starting it as Windows service instead of putting an LNK file into a users Autostart folder. Unfortunately, however, I was not able to find an option for doing this. Could you please let me know if this is possible?
Thanks,
Doron
Reported by @GasTurbineMan
The latest version is working better, but still not there it seems. The good news is that my client app (Home Remote) will now open the 2 apps on my Windows 10 PC (NextPVR and HDHomeRun) and I seen where the new commands are added. But then the button commands still don't work - giving a new error that what we were getting. One other minor thing I noticed is an error regarding not being able to check for a new version. I appreciate your help on this. Attached is my most recent log.
I'm not actually sure whether this is a bug or not, but I wanted to verify what the intended behavior was for non-alphanumeric single-character commands (both with and without shiftup/down). For example, if I send just a backtick (), the server appears to interpret that as VK_NUMPAD0 (0x60) and will type a zero (0) in notepad. shiftdown:shift also appears to have no effect on it (that is, whether or not preceded by shiftdown:shift, sending
is interpreted as VK_NUMPAD0). Similar mis-mappings occur for almost all (or perhaps all) non-alphanumeric keyboard symbols sent as single-character commands, such as ! (VK_PRIOR), [ (VK_LWIN), and ] (VK_APPS).
So my questions are: (1) are non-alphanumeric single-character commands supported/intended to be supported? (2) are such commands supposed to respond to shiftup/down? [edit]: (3) is shiftup/down supposed to be ignored by alphanumeric values specified by "chars:"? For example, if shiftdown:shift is specified first, and then "a" is sent, a capital "A" is typed, but if "chars:a" is sent, then a lowercase "a" is typed.
I will note that the non-alphanumeric characters go through fine when preceded by "chars:", so this is more about understanding proper usage/behavior for the non-alphanumeric case. For context, I'm building a fully-functional keyboard in Home Remote and am trying to verify I'm sending commands correctly and how much of the shift functionality I can offload to MCEC vs. having to handle in the remote.
If non-alphanumeric single-character commands are not intended to be supported, it may be helpful to actively screen the single-character commands because you can get some really weird behavior otherwise and it may be more secure to verify only-permitted single-character inputs.
Please let me know if I can provide any additional information or clarification. Thanks again for this awesome project!
It would be great to be able to disable the automatic update check. I can not find any way to do that.
How can i start some file (exe,bat) with startProcess command ?
I create MCEControl.commands file with this command:
""
When i try to send "test" command i get this error "Cmd: Unknown Cmd: test"
I work with win 10.
Another question, how can I kill process with software name ?
Thank you,
Hi there
After system update
Could not connect to the server
I disable the Anti-virus plus the fire-wall with no succeed.
Status of the MCE
" 18-01-24 15:49:47] MCEC: Log file being written to C:\Users\HT\AppData\Local\Kindel Systems\MCE Controller\MCEControl.log
[18-01-24 15:49:47] MCEC: Version: 1.8.6.27986
[18-01-24 15:49:47] MCEC: No user defined commands loaded; MCEControl.commands was not found.
[18-01-24 15:49:47] MCEC: 267 commands available.
[18-01-24 15:49:47] Server: Wakeup: Attempting connection to: 192.168.1.5:1319
[18-01-24 15:49:47] Server: Wakeup: Sent request Wakeup to wakeup host.
[18-01-24 15:49:47] Server: Starting TCP/IP Server on port 5150
[18-01-24 15:49:47] Server: Waiting for a client to connect
please assist
I'm trying out setting up the escape button on my 260, and I'm hitting the circle with a strike through it, and I get the log below. Could I get some guidance?
-log-
2020-03-29 03:46:43,767 INFO - SendInputCommand Cmd="VK_ESCAPE" Args="" Vk="VK_ESCAPE" Shift="False" Ctrl="False" Alt="False" Win="False" (vk_ESCAPE) (0x1b)
2020-03-29 03:46:43,897 INFO - SocketServer: Received from Client #5 at 192.168.2.10:47136: VK_END_CANCEL
2020-03-29 03:46:43,912 INFO - Commands: Unknown command: VK_END_CANCEL
When you try to use MCE Controller you get a message like:
2020-12-20 23:40:52,508 INFO - Command: Attempt to execute a disabled command (ch-)
2020-12-20 23:40:52,511 INFO - As of MCE Controller v2.2.1 commands are disabled by default.
2020-12-20 23:40:52,513 INFO - Edit MCEControl.commands to enable commands (change `Enabled="false"' to 'Enabled="true"').
I didn't notice anything in the documentation about this. Why were all commands disabled? Presumably for security but by default nothing works and it seems kind of painful to go through and enable every command.
What's the easiest way to enable all commands? Do a replace('enabled="false"','enabled="true"') in the MCEControl.commands file or will that hose something else?
Describe the bug
There's a high probability that I'm missing something but after weeks I'm desperate. I cannot get working keys for media commands - VK_MEDIA_PLAY_PAUSE, VK_PLAY, VK_PAUSE. Any help is appreciated. Thanks in advance.
Other commands like VK_VOLUME_UP, VK_VOLUME_DOWN, VK_ESCAPE works fine.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Media should pause, nothing happens.
Screenshots
This is the machine where MCE runs after issuing VK_VOLUME_UP, so the Windows recognizes playing media:
After issuing a pause command nothing happens, Windows media control doesn't show up.
Version Information
2023-03-07 04:01:47,986 INFO - MCE Controller v2.3.0.1 - OS: Microsoft Windows NT 10.0.19045.0 on x64 - .NET: 4.0.30319.42000
Snippets from the log
2023-03-07 20:58:57,528 DEBUG - SocketServer BeginReceive
2023-03-07 20:58:57,528 INFO - SocketServer: Received from Client #1 at 192.168.1.11:55823: VK_PAUSE
2023-03-07 20:58:57,529 DEBUG - SocketServer BeginReceive
2023-03-07 20:58:57,546 INFO - SendInputCommand Cmd="VK_PAUSE" Args="" Vk="VK_PAUSE" Shift="False" Ctrl="False" Alt="False" Win="False" (VK_PAUSE) (0x13)
2023-03-07 21:09:54,292 DEBUG - SocketServer BeginReceive
2023-03-07 21:09:54,294 INFO - SocketServer: Received from Client #1 at 192.168.1.11:55823: VK_VOLUME_UP
2023-03-07 21:09:54,294 DEBUG - SocketServer BeginReceive
2023-03-07 21:09:54,311 INFO - SendInputCommand Cmd="VK_VOLUME_UP" Args="" Vk="VK_VOLUME_UP" Shift="False" Ctrl="False" Alt="False" Win="False" (VK_VOLUME_UP) (0xaf)
Desktop (please complete the following information):
ThinkPad W530 notebook with closed lid and connected to the projector via HDMI.
Additional context
I have tested pausing with VLC Media Player, Kodi, and Chrome playing media.
I am trying to set up a command to start the Netflix Windows10 app. From a command line, or as a desktop shortcut the following works: "C:\Windows\System32\cmd.exe /c start netflix:"
So I have added the following line to my commands file:
But it doesn't work. I get the following error:
error: System.ComponentModel.Win32Exception (0x80004005): The system cannot find the file specified at ...
Anyone know the syntax to launch these types of apps with MCEC?
Is it possible to use MCE Controller and the MCEControl.commands file to launch plex?
I've defined a command:
which was working fine in MCE Controller 1.8. I made the mistake of upgrading and deleting the old program before fully testing version 2. Unfortunately, the new version doesn't accept the classname parameter, and ends up sending the command to the foreground window.
I've tried variations of the iTunes classname, and the program simply will not accept it. Classname remains blank in MCE Controller.
Describe the bug
The Host property of the Client mode for MCEC doesn't appear to work with an IP address. It's ok if I use a hostname.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
MCEC should connect to the server on the given IP address (and port)
Version Information
Include the first line from the log window, like this:
2022-12-08 13:54:19,537 INFO - MCE Controller v2.2.10.2 - OS: Microsoft Windows NT 10.0.22621.0 on x64 - .NET: 4.0.30319.42000
Snippets from the log
Include any other relevant logs (either copy/pasted from the MCE Controller window or from the log files found in %appdata%\Kindel Systems\MCE Controller
which contain more debug info).
2022-12-08 14:12:00,557 INFO - Client: Waiting 30 seconds to connect
2022-12-08 14:12:35,523 DEBUG - SocketClient: (BeginConnect) SocketException: No such host is known
2022-12-08 14:12:35,523 DEBUG - No such host is known (11001)
2022-12-08 14:12:35,523 DEBUG - ClientSocketNotificationHandler - ServiceStatus.Error: No such host is known (11001)
2022-12-08 14:12:35,523 ERROR - Client: Error; No such host is known (11001)
2022-12-08 14:12:35,536 INFO - Client: Stopping...
Desktop (please complete the following information):
MCEC is running on a DELL laptop, the Server is a TCP Server running on a Crestron control system (listening on 0.0.0.0:5150)
Additional context
I can workaround by adding a dummy host to my local hosts file (c:\windows\system32\drivers\etc\hosts),
e.g.:
192.168.1.200 fakehost
And then use fakehost in the Host field.
I've attempted to override the TimeOut on the Shutdown command to 5 and it appears to take the change but when executing the command the log shows the TimeOut="30" and then it takes 30 seconds before the shutdown is executed. I even attempted to make my own command and had the same issue.
Hi,
I'm trying to disable the update window that is poping on the desktop but I can't find a way in the settings.
Could you indicate how to achieve that ?
Or perhaps indicate which port it uses to request the info over the net ? so I can block it in the firewall ?
Best
Couldn't find anything online to reference this. But I have been doing this from Vera for a few years now but Vera is going away in place of Home Assistant. But I can't figure out how to send the "shutdown\r" command via HA.
Describe the bug
I have created a group of commands using SetForegroundWindow. It is enabled, and the AppName(s) are correct.
I wish to be able to switch the PC between apps from a the control system. MCEC is connecting to the control system successfully.
When I issue a command, MCEC receives the command, matches it with the definition and runs the steps.
My commands are nested.
No errors are reported (I'm sure I have the correct AppName - and if it's wrong, I DO get an error saying the app cannot be found - example below)
2022-12-08 14:30:34,605 INFO - Client: Received; goPres
2022-12-08 14:30:34,615 INFO - SetForegroundWindowCommand: GetProcessByName for POWERPNT.exe failed
I have tried running MCEC as admin in case this is a permissions issue.
I have increased logging to DEBUG but don't get any additional information.
I've tried disabling all AntiVirus in case this is catching the SetForegroundWindow API call - not sure how else to debug that though.
To Reproduce
Steps to reproduce the behavior:
<setforegroundwindow cmd="goPres" enabled="true" appname="POWERPNT">
<sendmessage enabled="true" msg="274" lparam="0" wparam="61488" />
</setforegroundwindow>
Expected behaviour
The desired app should gain focus and then maximise.
Version Information
Include the first line from the log window, like this:
2022-11-22 14:15:27,097 INFO - MCE Controller v2.2.10.2 - OS: Microsoft Windows NT 10.0.22621.0 on x64 - .NET: 4.0.30319.42000
Snippets from the log
Include any other relevant logs (either copy/pasted from the MCE Controller window or from the log files found in %appdata%\Kindel Systems\MCE Controller
which contain more debug info).
2022-12-08 14:25:22,926 INFO - Client: Received; goPres
2022-12-08 14:25:22,939 INFO - SetForegroundWindowCommand: SetForegroundWindow(POWERPNT)
2022-12-08 14:25:22,946 INFO - SendMessageCommand: SendMessage(<forground window>, 274, 61488, 0) - Cmd="" Msg="274" lParam="0" wParam="61488" ClassName="" WindowName=""
Desktop (please complete the following information):
Dell Laptop, Windows 11, Crestron control system
Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Version Information
Include the first line from the log window, like this:
2020-03-29 16:42:20,435 INFO - MCE Controller v2.2.3.2 - OS: Microsoft Windows NT 10.0.18363.0 on x64 - .NET: 4.0.30319.42000
Snippets from the log
Include any other relevant logs (either copy/pasted from the MCE Controller window or from the log files found in %appdata%\Kindel Systems\MCE Controller
which contain more debug info).
Paste Logs here.
Desktop (please complete the following information):
Details of home control system you are interfacing with.
Additional context
Add any other context about the problem here.
It seems that if the MCEC application is closed while a server is active then when you restart MCEC with the server function enabled that you get an error. It reports:
Server: Error
Server: Stopped
If I first disable the server and then exit the application this problem does not occur. If I change the port to a different number then the server can successfully run. This behavior appears to be the same in both Win7 and Win10.
Maybe the port is somehow locked?
Any ideas how to fix this? I have not tried rebooting to see if that fixes the problem, but that shouldn't have to be done.
Hi Charlie,
You've mentioned you have a Control4 Driver for OS3 available upon request. Would you mind sharing it?
Thanks,
Carlos
Is there an easy way to use V2,x with Windows 7 MCE?
I've got V 1.9 currently and am experimenting with ways to get data between OpenHAB and Win7 Media Center. So far I've used it with Expect Lite to connect, issue a command and then disconnect. Ideally I'd like to make this 2 way so that pressing the Green Button on the MCE remote or play sends a command to OpenHAB. Alternatively is there a way of sending status messages to a rest interface? Also have you considered offering MQTT as an interface between Windows and the outside world? That would make interfacing with home automation a breeze.
It might be nice just as a general feature--as I was going through and turning things on, I found I had to do a lot scrolling because the vk_ commands are alphabetized and not grouped more logically internally. Looking for vk_up, vk_down, vk_left, and vk_right, for example, was inconvenient, but not that big a deal. Maybe if things were just ordered more logically, that would help (all alpha stuff first, grouping related things, etc). Or perhaps just turning on all vk_ commands with a single checkbox, akin to how mouse: works? That's really just a one-time kind of problem, however, and lacking a good solution, I'm fine with whatever. It might be nice to easily get a list of what commands are currently enabled, though (a hide disabled/unchecked toggle, or something?).
The Auto update pops up a notification box on top of all windows currently and cannot be disabled.
It would be nice to have a check box in the settings menu to disable this feature.
I have unattended computers generating a video displays connected to an automation system and that system is using these commands to change between a fixed number of commands. These computers are configured to auto reboot and go back to where they were on startup or power failure. I suspect that on reboot this auto update check is happening and it is generating a service request to remove the popup box.
This little piece of software has been a great help to me over the years, Thanks.
Describe the bug
We use only the "shutdown"-command in MCE Controller. After a period of time, MCE Controller won't load the commands correctly, so "shutdown" is no longer enabled and therefore the PC won't shut down.
To Reproduce
We haven't found a way yet to reproduce the error, but think it may be related to power failure.
Expected behavior
We expected MCE Controller to shut the PC down, as it always had done. We use the tool on 50 PCs, and have the problem only on 5 devices. The error started occuring after 2 months.
Screenshots
Version Information
MCE Controller v2.2.7.67 - OS: Microsoft Windows NT 10.0.17763.0 on x64 - .NET: 4.0.30319.42000
Snippets from the log
Paste Logs here.
[MCEControl_6206-PC-01.log](https://github.com/tig/mcec/files/7863260/MCEControl_6206-PC-01.log)
Desktop (please complete the following information):
Microsoft Windows 10 Pro
Version 10.0.17763 Build 17763
Additional context
Add any other context about the problem here.
How do you send middle mouse button commands? The left and right button commands work great. I've spent some time playing around with the xbc
, etc. commands, but the behavior I'm seeing just isn't what I'd expect (trying to open a link in a new tab in a browser, it instead acts as if I hit the Back button). I tried both mouse:xbc,3
and mouse:xbc,1
, but both did the same thing. Thanks!
Just installed the newest version 2.0.5 over the older 1.x version which had been working great. I have a Windows 10 system. The new version over-wrote my original mcecontrol.commands file with what appears to be a newer format MCEControl.commands. I attempted to add my custom commands from my original file to the new file, but I continue to get an "unknown command" error in MCE activity window. Will attach both files. Please advise on how to add my custom commands to the new format file. Thanks.
The commands files is stored in the same folder as the exe which is likely:
C:\Program Files (x86)\Kindel Systems\MCE Controller, or
C:\Program Files\Kindel Systems\MCE Controller
Isn't it now frowned upon to store config files in this location? Therefore shouldn't this file be stored in the %APPDATA% folder - just like the settings file.
Sorry, I've encountered one more issue that I think may be a bug, but I'm not 100% sure what the intended behavior should be. As a follow-on to #12 and #13, I thought I understood the relationship between shiftdown/up and single character (SendInput) commands. Similarly, I thought I understood how chars: commands (Chars) worked within that context--that is:
shiftdown:shift
a
chars:a
shiftup:shift
would result in "Aa" being typed in the foreground window and this is the behavior I see with the current version. However, that is not the behavior I see with shiftdown:alt, hence my confusion as to what is supposed to happen. For example,
shiftdown:alt
f
shiftup:alt
and (after clearing back with a couple of escapes)
shiftdown:alt
chars:f
shiftup:alt
both bring up the file menu when notepad is the foreground application. Which behavior is correct? Should chars: commands be impacted by shift/control/alt/win being depressed when received or should they ignore those modifier keys? If it matters, I observed similar behavior to the shift case when shiftdown:ctrl was used. That is, the find menu was brought up for "f" but the letter f was typed in notepad with "chars:f"
After re-reading the documentation a number of times, I think the shift/ctrl behavior is correct and alt is wrong (I did not test l/rwin because I'm less familiar with those shortcuts), but I apologize if I still don't completely have my head around the various command types.
Thanks!
In version 2.2.3.5, it seems like the shiftup/down commands are not working properly/are being ignored. I recently upgraded from a fairly old version (1.8, I think) to the latest version and noticed the changed behavior. To be clear, I did enable "chars:" and "shiftup:" and "shiftdown:" commands.
To Reproduce
Just using the documentation as an example, to type the string "Test!" by sending these commands:
shiftdown:shift
t
shiftup:shift
e
s
t
shiftdown:shift
1
The output I get is "test1". (see attached screenshot) I've also experimented with other combinations with similar results. shiftdown:alt and shiftup:alt do seem like they may behave correctly at least some of the time. For example, when notepad was in the foreground, this sequence brought up the file menu as expected:
shiftdown:alt
f
The other shiftup/down commands I tried seemed to have no effect (that is, shift, ctrl, and lwin).
**Snippets from the log**
2020-04-18 15:37:00,726 INFO - MCE Controller v2.2.3.5 - OS: Microsoft Windows NT 10.0.18363.0 on x64 - .NET: 4.0.30319.42000
2020-04-18 15:37:00,757 INFO - Settings: Loaded settings from C:\Users\xxx\AppData\Roaming\Kindel Systems\MCE Controller\MCEControl.settings
2020-04-18 15:37:00,945 INFO - Logger: Logging to C:\Users\xxx\AppData\Roaming\Kindel Systems\MCE Controller\MCEControl.log
2020-04-18 15:37:00,945 INFO - Telemetry: Disabled
2020-04-18 15:37:00,960 INFO - Commands: Watching C:\Users\xxx\AppData\Roaming\Kindel Systems\MCE Controller\MCEControl.commands for changes.
2020-04-18 15:37:00,992 INFO - Commands: 296 built-in commands defined
2020-04-18 15:37:00,992 INFO - Commands: Loading user-defined commands from C:\Users\xxx\AppData\Roaming\Kindel Systems\MCE Controller\MCEControl.commands
2020-04-18 15:37:01,632 INFO - Commands: 296 commands loaded
2020-04-18 15:37:01,648 INFO - Commands: 31 commands enabled (265 commands disabled).
2020-04-18 15:37:01,663 INFO - Server: Starting...
2020-04-18 15:37:01,663 DEBUG - SocketServer - Binding to IP address: 0.0.0.0:5150
2020-04-18 15:37:01,663 DEBUG - _mainSocket.Listen
2020-04-18 15:37:01,663 INFO - SocketServer: Started on port 5150
2020-04-18 15:37:01,663 INFO - SocketServer: Waiting for a client to connect
2020-04-18 15:37:01,476 INFO - You are running the most recent version of MCE Controller
2020-04-18 15:37:02,925 DEBUG - SocketServer OnClientConnect
2020-04-18 15:37:02,925 DEBUG - Opened Socket #1
2020-04-18 15:37:02,941 INFO - SocketServer: Client #1 at 127.0.0.1:51235 connected
2020-04-18 15:37:02,941 DEBUG - SocketServer BeginReceive
2020-04-18 15:37:26,622 DEBUG - SocketServer OnClientConnect
2020-04-18 15:37:26,622 DEBUG - Opened Socket #2
2020-04-18 15:37:26,622 INFO - SocketServer: Client #2 at 192.168.120.69:43158 connected
2020-04-18 15:37:26,622 DEBUG - SocketServer BeginReceive
2020-04-18 15:37:45,037 INFO - SocketServer: Received from Client #2 at 192.168.120.69:43158: shiftdown:shift
2020-04-18 15:37:45,037 INFO - SocketServer: Received from Client #2 at 192.168.120.69:43158: t
2020-04-18 15:37:45,037 INFO - SocketServer: Received from Client #2 at 192.168.120.69:43158: shiftup:shift
2020-04-18 15:37:45,037 INFO - SocketServer: Received from Client #2 at 192.168.120.69:43158: e
2020-04-18 15:37:45,037 DEBUG - SocketServer BeginReceive
2020-04-18 15:37:45,037 INFO - SocketServer: Received from Client #2 at 192.168.120.69:43158: s
2020-04-18 15:37:45,037 INFO - SocketServer: Received from Client #2 at 192.168.120.69:43158: t
2020-04-18 15:37:45,037 INFO - SocketServer: Received from Client #2 at 192.168.120.69:43158: shiftdown:shift
2020-04-18 15:37:45,037 DEBUG - SocketServer BeginReceive
2020-04-18 15:37:45,178 INFO - ShiftKey: shift down
2020-04-18 15:37:45,178 INFO - CharsCommand: Typing 1 chars: t
2020-04-18 15:37:45,193 INFO - ShiftKey: shift up
2020-04-18 15:37:45,193 INFO - CharsCommand: Typing 1 chars: e
2020-04-18 15:37:45,193 INFO - CharsCommand: Typing 1 chars: s
2020-04-18 15:37:45,209 INFO - CharsCommand: Typing 1 chars: t
2020-04-18 15:37:45,209 INFO - ShiftKey: shift down
2020-04-18 15:37:49,585 INFO - SocketServer: Received from Client #2 at 192.168.120.69:43158: 1
2020-04-18 15:37:49,585 DEBUG - SocketServer BeginReceive
2020-04-18 15:37:49,617 INFO - CharsCommand: Typing 1 chars: 1
Desktop (please complete the following information):
I'm trying to interface from Home Remote, but the above testing was done via PuTTY, with no difference in behavior.
Happy to provide any other info that might be useful in tracking this down.
Thanks!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.