DonationCoder.com forum
 
Read-only archive. This is a static copy of the DonationCoder.com forum. Reading and searching work as before; logging in, posting and private messages do not.
Archive of 2026-10-21 · About this archive · Main site

Author Topic: [SOLVED, kinda] CTRL-C shortcut not recognized in Win7-Explorer  (Read 39,758 times)

damax

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 35
Hi,

I use TapTap a LOT and just love it. But now I seem to have stumbled upon a little bug.

My configuration looks like this:

-- snip---

// double right control to Control+V
keymap DRC : C+V

// double right shift to Control+C
keymap DRS : C+C

-- snip---

It works nearly always, but if I

- try to copy a filename from the Windows Explorer (right-click -> rename)

or

- try to copy the address from the addressbar of the Windows explorer

via Double-Right-Shift, nothing gets copied to the clipboard.

It's not a severe bug but a little annoying.

I use
Windows 7 Enterprise 64Bit
currently updated version (May 26, 2011)



=======
da]v[ax
=======
« Last Edit: September 07, 2016, 02:02 PM by damax »

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,931
    • Gathering Badge
    • Plugin Coding Medal
    • Participated in NANY Challenge Seventeen Times
    • Cody Award
    • Coding Snacks
    • Volunteers/Staff
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #1 on: May 26, 2011, 10:20 AM »
Hmm that's strange..  I wonder what could explain it not working.. Could you experiment a little and try to figure out if the problem is:
1. TapTap doesnt even get invoked from inside windows explorer
2. TapTap can detect some keys from within Windows Explorer, but not ctrl or shift
3. TapTap detects the keys and can send most keys just not ctrl+C or ctrl+V
4. TapTap is sending the Ctrl+C and Ctrl+V but windows explorer is ignoring them.

damax

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 35
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #2 on: June 16, 2011, 07:14 AM »
Sorry for the long delay, I just didn't find the time. I did some testing and it seems that no keystroke whatsoever goes from Win7-Explorer to TapTap. I guess, answer 1 would be true.

The issue seems to occur in:

Windows Explorer
MS Paint 6.1 (Build 7600)


But all the other apps work fine (IE, Notepad, MS-Office, Firefox etc). I wouldn't care for paint, but in Explorer it really sucks.

=======
da]v[ax
=======

jgpaiva

  • Artificial Idiocy
  • Global Moderator
  • Joined in 2006
  • *****
  • Posts: 4,727
    • Cody Award
    • Participated in NANY Challenge Once
    • Coding Snacks
    • Portugal Inhabitant
    • Linux User
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #3 on: June 16, 2011, 11:05 AM »
damax: I've found similar problems with my own GridMove not working in some apps. It had to do with Windows 7's isolation between apps, the stuff GridMove was trying to do wasn't being passed on to the other apps.
Can you try running TapTap in administrator mode (or windows xp compatibility mode, can't remember which one solved it)?

damax

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 35
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #4 on: June 16, 2011, 11:10 AM »
Can you try running TapTap in administrator mode (or windows xp compatibility mode, can't remember which one solved it)?

Tried XP-compatibility SP2 and 3 as well as "run as administrator": still no luck  :down:

=======
da]v[ax
=======

racknemx

  • Participant
  • Joined in 2006
  • *
  • Posts: 1
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #5 on: July 09, 2012, 04:05 PM »
I Have the same problem with explorer... tried running it with admin privileges and all the other suggestions mentioned before... no positive results.

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,931
    • Gathering Badge
    • Plugin Coding Medal
    • Participated in NANY Challenge Seventeen Times
    • Cody Award
    • Coding Snacks
    • Volunteers/Staff
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #6 on: July 10, 2012, 11:25 AM »
Is the problem just under Windows 7 FILE EXPLORER? TapTap works fine in other windows 7 applications?

damax

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 35
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #7 on: July 23, 2012, 06:02 AM »
Is the problem just under Windows 7 FILE EXPLORER? TapTap works fine in other windows 7 applications?

For me, the problem exists in
- Windows File Explorer (Window and Address-Bar)
- Notepad

It works in all other Microsoft apps like Excel, Word, Outlook and in all other apps as well

=======
da]v[ax
=======

damax

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 35
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #8 on: October 21, 2014, 05:38 AM »
Hello again,

as the problem still exists and I still love TapTap so much  :-*, I wanted to ask if there is any chance that you might take a look at this? Does this even occur on your Windows7 or am I the only one?

=======
da]v[ax
=======

damax

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 35
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #9 on: June 17, 2016, 08:04 AM »
Oh dear. Is the latest version of TapTap really already 10 years old? My-oh-my, how time flies... I still use TapTap daily and extensively, so I am very sad to witness its steady decline. Just lately, TapTap stopped working in Firefox 46 and Chromium on my Windows7 64-bit machine.

I still use

// double right control to Control+V
keymap  DRC      :  C+V

// double right shift to Control+C
keymap  DRS      :  C+C

which works fine in most applications, but now it seems that I have to add Firefox and Chromium to the list of non-working apps, which is a pity because I spend a lot of time in the browser blogging, copy/pasting code etc.

Could it be that TapTap does not work well with 64-bit applications? This would be my guess by observing what happens here...

=======
da]v[ax
=======

damax

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 35
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #10 on: July 27, 2016, 06:27 AM »
Hm... Mouser? Are you still alive? In which language is TapTap written? Would it be possible to port this to .NET? I would gladly take a look at it...

=======
da]v[ax
=======

mouser

  • First Author
  • Administrator
  • Joined in 2005
  • *****
  • Posts: 40,931
    • Gathering Badge
    • Plugin Coding Medal
    • Participated in NANY Challenge Seventeen Times
    • Cody Award
    • Coding Snacks
    • Volunteers/Staff
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #11 on: July 28, 2016, 02:54 PM »
Oops, sorry I missed all this.

I rarely hear about anyone using TapTap.. I'm trying to think why it wouldn't work in those applications.
TapTap is C++ built with Visual Studio.  I could share the source code..

If it's a 64bit problem, I could probably make a 64bit build to test.

damax

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 35
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #12 on: July 28, 2016, 10:03 PM »
Yeah, I guess I am the last user, but it's really a great tool for lefties like me.  :Thmbsup:

If you would make a 64bit build, I'd gladly test it.

I have zero experience with C++ (I'm a Managed Code N00b), so I will probably not be of much help, but I would give it a try anyways. With a Visual Studio project, even I should be able to set a breakpoint or something ;) I have no clue as how to detect a non-detected double-key-press but still I'd give it a try.

You got my mail address so if it's a small project just throw it over the fence or send me a link where to get it.

=======
da]v[ax
=======

damax

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 35
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #13 on: August 04, 2016, 06:38 AM »
Mouser? Still there?

=======
da]v[ax
=======

IainB

  • @Slartibartfarst
  • Supporting Member
  • Joined in 2008
  • **
  • Posts: 7,544
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #14 on: August 04, 2016, 09:16 AM »
@damax: If your main need for Tap-Tap is that you are a "lefty" - i.e., using the mouse with your left hand - when you need to press Ctrl-C or Ctrl+V, then a simple solution might be to use AHK (Autohotkey) and type (say) RightCtrl+M and RightCtrl+N as a substitute for (Left)Ctrl+C and (Left)Ctrl+V respectively - i.e., AHK would intercept the substitute keys pressed and pass the respective correct keys to the system.

It might be worth a try - suck-it-and-see. I haven't tried it myself to see if it would work, because I have my RightCtrl key mapped as a Delete key (to save me having to traverse and hunt for the actual Delete key near the top RHS edge of the keyboard on my laptop).
You could also consider putting OkayKeybees to good use. I only came across it the other day, but I thought it looked rather nifty.
URL = http://www.joejoesoft.com/vcms/119/
Quote
OkayKeybees is a freeware keyboard remapper with a twist. You define what keys are always replaced or what keys are replaced only when a user defined modifier key is held. You can effectively "move" keys to either side of the keyboard or even effective disable keys (like the Windows key).
No installation program is needed.
________________________________

damax

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 35
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #15 on: September 06, 2016, 09:48 AM »
OKAY! I finally found some time and solved my problem. (No, I haven't. See update).

As IanB suggested I used AutoHotKey, created a script, compiled it et voilĂ ... it works. Better than ever ;)

If anyone's interested, here's the AHK code:

Code: ( autohotkey)
; AHK Script to redirect Double-Shift to Ctrl+C and Double-Ctrl to Ctrl+V
; Idea came from this Reddit: https://www.reddit.com/r/AutoHotkey/comments/44pn3m/double_tap_short_cut/
; done by daMax (//todamax.net)

Shift::
 if (A_PriorHotkey = "Shift" AND A_TimeSincePriorHotkey < 250)
 {
    ; MsgBox double-click Shift.
    Send, ^c
  }
  else
  {
  ; no double-click. just wait for the key to be released and move on with your life
  KeyWait, Shift
  return
}

Control::
 if (A_PriorHotkey = "Control" AND A_TimeSincePriorHotkey < 250)
 {
    ;MsgBox double-click Control.
    Send, ^v
  }
  else
  {
  ; no double-click. just wait for the key to be released and move on with your life
  KeyWait, Control
  return
}

This now seems to work in Windows Explorer, Notepad, Firefox etc.

I uploaded the finished EXE to my blog:
http://blog.todamax.net/wp-content/uploads/2016/09/daMaxCopyPaste.zip

You can also find the script there: http://blog.todamax.net/wp-content/uploads/2016/09/daMaxCopyPaste.ahk

Update: aahrg! It's no good :( now the Shift-Key doesn't work "on its own" anymore, so I cannot Shift keys at all. FAIL :(

=======
da]v[ax
=======
« Last Edit: September 06, 2016, 11:22 AM by damax »

IainB

  • @Slartibartfarst
  • Supporting Member
  • Joined in 2008
  • **
  • Posts: 7,544
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #16 on: September 07, 2016, 08:26 AM »
@damax: Argh!! I don't think I was recommending that!!
Keep it simple. You don't need TapTap.
You might not need the ClipWait, but I put it in there just-in-case.
Try:
Code
>^m::   ; RightCtrl+m is to send <^c (COPY)
           Send, ^c
	   ClipWait, 2	; wait for up to 2 seconds for state change before proceeding, so as to ensure capture to clipboard
           Return

>^n::    ; RightCtrl+n is to send <^v (PASTE)
           Send, ^v
           Return

By the way, I discovered that OkayKeybees v1.04a does not seem to work under Win10-64, so don't bother with it.

As I said, I can't actually test this to prove it as I have my RtCtrl key mapped to something else. You should be able to test it OK though, I think.
Do you need any help with editing your Autohotkey.ahk file?
If you do, then post it here as a generic script (press the # button whilst in edit mode, on the website).
There's lots of people here can help you.

damax

  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 35
Re: CTRL-C shortcut not recognized in Win7-Explorer
« Reply #17 on: September 07, 2016, 10:14 AM »
@IanB: Ooooh. That's a nice and clean solution. Alas, I'd really like a Double-Tap-thing like it was in TapTap ('cos RCtrl+m and even worse RCtrl+n are still quite awkward key-combos to use), so I tried to do it with RapidHotKey. Which kinda works although it's quite an ugly script...

Code: ( autohotkey)
; thanks to https://autohotkey.com/board/topic/35566-rapidhotkey/


~RShift::RapidHotkey("^c", 2, 0.1) ;COPY
~RControl::RapidHotkey("^v", 2, 0.1) ;PASTE


RapidHotkey(keystroke, times="2", delay=0.2, IsLabel=0)
{
	Pattern := Morse(delay*1000)
	If (StrLen(Pattern) < 2 and Chr(Asc(times)) != "1")
		Return
	If (times = "" and InStr(keystroke, """"))
	{
		Loop, Parse, keystroke,""
			If (StrLen(Pattern) = A_Index+1)
				continue := A_Index, times := StrLen(Pattern)
	}
	Else if (RegExMatch(times, "^\d+$") and InStr(keystroke, """"))
	{
		Loop, Parse, keystroke,""
			If (StrLen(Pattern) = A_Index+times-1)
				times := StrLen(Pattern), continue := A_Index
	}
	Else if InStr(times, """")
	{
		Loop, Parse, times,""
			If (StrLen(Pattern) = A_LoopField)
				continue := A_Index, times := A_LoopField
	}
	Else if (times = "")
		continue := 1, times := 2
	Else if (times = StrLen(Pattern))
		continue = 1
	If !continue
		Return
	Loop, Parse, keystroke,""
		If (continue = A_Index)
			keystr := A_LoopField
	Loop, Parse, IsLabel,""
		If (continue = A_Index)
			IsLabel := A_LoopField
	hotkey := RegExReplace(A_ThisHotkey, "[\*\~\$\#\+\!\^]")
	IfInString, hotkey, %A_Space%
		StringTrimLeft, hotkey,hotkey,% InStr(hotkey,A_Space,1,0)
	backspace := "{BS " times "}"
	keywait = Ctrl|Alt|Shift|LWin|RWin
	Loop, Parse, keywait, |
		KeyWait, %A_LoopField%
	If ((!IsLabel or (IsLabel and IsLabel(keystr))) and InStr(A_ThisHotkey, "~") and !RegExMatch(A_ThisHotkey
	, "i)\^[^\!\d]|![^\d]|#|Control|Ctrl|LCtrl|RCtrl|Shift|RShift|LShift|RWin|LWin|Alt|LAlt|RAlt|Escape|BackSpace|F\d\d?|"
	. "Insert|Esc|Escape|BS|Delete|Home|End|PgDn|PgUp|Up|Down|Left|Right|ScrollLock|CapsLock|NumLock|AppsKey|"
	. "PrintScreen|CtrlDown|Pause|Break|Help|Sleep|Browser_Back|Browser_Forward|Browser_Refresh|Browser_Stop|"
	. "Browser_Search|Browser_Favorites|Browser_Home|Volume_Mute|Volume_Down|Volume_Up|MButton|RButton|LButton|"
	. "Media_Next|Media_Prev|Media_Stop|Media_Play_Pause|Launch_Mail|Launch_Media|Launch_App1|Launch_App2"))
		Send % backspace
	If (WinExist("AHK_class #32768") and hotkey = "RButton")
		WinClose, AHK_class #32768
	If !IsLabel
		Send % keystr
	else if IsLabel(keystr)
		Gosub, %keystr%
	Return
}
Morse(timeout = 400) { ;by Laszo -> http://www.autohotkey.com/forum/viewtopic.php?t=16951 (Modified to return: KeyWait %key%, T%tout%)
   tout := timeout/1000
   key := RegExReplace(A_ThisHotKey,"[\*\~\$\#\+\!\^]")
   IfInString, key, %A_Space%
		StringTrimLeft, key, key,% InStr(key,A_Space,1,0)
	If Key in Shift,Win,Ctrl,Alt
		key1:="{L" key "}{R" key "}"
   Loop {
      t := A_TickCount
      KeyWait %key%, T%tout%
		Pattern .= A_TickCount-t > timeout
		If(ErrorLevel)
			Return Pattern
    If key in Capslock,LButton,RButton,MButton,ScrollLock,CapsLock,NumLock
      KeyWait,%key%,T%tout% D
    else if Asc(A_ThisHotkey)=36
		KeyWait,%key%,T%tout% D
    else
      Input,pressed,T%tout% L1 V,{%key%}%key1%
	If (ErrorLevel="Timeout" or ErrorLevel=1)
		Return Pattern
	else if (ErrorLevel="Max")
		Return
   }
}

Thank a TON for your support so far.

=======
da]v[ax
=======

Original address: https://www.donationcoder.com/forum/index.php?topic=26870.0