For few days I tried messing with the sources of both ccv and hid driver but had no luck. My goal was to get hid driver automated and ccv as well working in the background. I tried many methods and this seems to be working the best.
I got the idea from cktouch’s method so, some credit to you, which can be found here:
If anyone wants the hiddriver, please refer here :
and how to install it please refer here:
In the attachment there will be 3-5 files, which i will show how to use in the video below. I recorded in full screen so it can be seen better. Well I hope this helps people that are interested in automating the multitouch system, or even just wanting to run community core vision in the background, which seems to be saving some cpu if i am not mistaking. If anyone is interested in only doing that, just put the files in the right places and make a shortcut to ccv.exe. Again, this method isn’t 100% perfect, but it is a start and a quick fix until better version are released.
I have updated ccv.exe where the path is not specified, so it no longer has to be in “c:\multitouch\”, it just has to be in the same folder as community core vision. You can make shortcut or open it manually and it will work; however, if you want to run it with task manager make sure you write the full path to the file in the “start in” field, as you can see me do in the video.
Please let me know if i missed anything.
Here is the source for ccv.exe for anyone that is interested. It is just a simple program.
Add a Timer1 with 1000 interval enabled
Add a Timer2 with 10000 interval enabled
Public Class CCV
Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As Integer, ByVal nCmdShow As Integer) As Integer
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Integer
Private Const SW_HIDE = 0
Public Sub KillProcess(ByVal processName As String)
On Error GoTo ErrHandler
oWMI = GetObject("winmgmts:")
oServices = oWMI.InstancesOf("win32_process")
For Each oService In oServices
servicename = LCase(Trim(CStr(oService.Name) & ""))
If InStr(1, servicename, LCase(processName), vbTextCompare) > 0 Then
ret = oService.Terminate
oServices = Nothing
oWMI = Nothing
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim loadccv As New System.Diagnostics.ProcessStartInfo()
loadccv.FileName = "Community Core Vision.exe" 'Loads community core vision
loadccv.WindowStyle = ProcessWindowStyle.Hidden 'Hides the console of community core vision at start
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Dim hnd As Integer
hnd = FindWindow("Glut", Nothing) 'Finds community core vision based on it's class name
Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
KillProcess("CCV.exe") ''Kills ccv.exe from task process, other methods would just not stop it for some reason.