topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • August 17, 2019, 09:59 PM
  • Proudly celebrating 13 years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - superticker [ switch to compact view ]

Pages: [1] 2 3 4 5 6next
1
Living Room / Re: I'm getting married, wish me luck!
« on: December 03, 2018, 07:49 PM »
I just learn about you getting married.  All the best to you and yours.  And keep on coding.  --superticker

2
I don't think I've ever used that right-click menu. ...certainly not the paste-as-file bit
I haven't used this Paste-As-File feature before either.  This feature is almost too clever.  You need to make a directory-oriented program [such as Windows Explorer] your front most window, then invoke the Paste-As-File operation [say with Ctl+Alt+V to reach the right-click menu, then select "Additional actions on last clip (...)", and then select the "Paste Clip as File.." menu item] to make it work.

Because it's a little like trying to (1) scratch you head, (2) chew gum, and (3) skip backwards all as the same time, I don't think anyone knows about it.  It's a super-secret, undocumented feature that you can only reach by walking through several trap doors.  Not even the forum knows about it ... until now.

3
... if it's pasting into an application window, then what's the file name associated with Paste-As-File used for?
Okay, if I click the Desktop, then invoke the Paste-As-File feature, I get a file created on the Desktop with the associated Paste-As-File file name.  That works nicely.  Interesting feature....  I've been using CHS for several years and didn't even know it could do this.

But if I open a Notepad window, then invoke the Paste-As-File function, I get nothing....  Okay, I just read your followup post, which says I must use a File Explorer directory management program instead, and the goal is to create a new file, not paste into an arbitrary open window.  I think I got it now.  Thanks for all the help.

4
Wow, that response was impressively fast.  :D

Hmmm, apparently it's not working then; I get the bell sound whenever I invoke it.  How do I get an error message out of CHS when the bell sounds?

Also, if it's pasting into an application window, then what's the file name associated with Paste-As-File used for?  (I must be missing something.)

I searched the forum, but no one mentions this feature.  I must be the only one having problems with it.

5
How do I control the directory used by the Paste-As-File operation?  I would like to save these files on my Desktop.  How do I do that?

6
... made the "Separator String" edit box ... where you could select from some presets like ("\n" or ",")?
I like the idea of having presets as long as one of the presets is "no separator". The simplest solution that works is best.

7
I use the Addict Spell Check library to manage all of the spelling stuff.... more about it ... here:
http://www.addictive.../ed-dictionaries.htm

... it may only make those available for read-access as additional dictionaries, and insist that the actually modifications be done in an exclusive dictionary file -- or it may let you then choose a dictionary in that directory to use as the one to add to, I'm just not sure.

This is an issue of write-locking granularity. The file system only write locks with file-level granularity (all or nothing); whereas, the monitor system (like in a database) locks with record-level granularity. In this case, each word would be in a different database record.

If you don't write lock at some level (file level or record level), then one writer (which doesn't know about an earlier update by another writer) may replace the primary copy with its stale copy of the dictionary. So a writer must first close the file (or record) for read access, then open it again for write lock access (just before making a change) so it gets a fresh copy of the dictionary just before it writes. Now if it's doing this with file-level granularity, it should release that write lock immediately so it plays well with other apps that may want to write.

Databases and operating systems use the monitor approach (write locking at the resource [or record] level) so several independent processes can write lock (or allocate) resources (under monitor arbitration) at the same time.

I'm thinking the monitor approach is an overkill here because several apps (or process threads) wouldn't be wanting to write to custom.adu simultaneously on a personal computer. But if an apps doesn't play well and continually write locks custom.adu, then we have a problem.

I'm hoping apps would (1) close the read open custom.adu, (2) re-open custom.adu with a write lock thereby getting a fresh master copy of custom.adu from disk, (3) write the new word into it, (4) close the file to flush the new word (disk cluster) out to disk, (5) then re-open custom.adu again for reading.  But this is only a "hope". I really don't know how it works.

... this [dictionary program] can READ the Microsoft Office dictionary, [but] it will not modify it.

That's because Microsoft Office is using a dictionary monitor that addictivesoftware.com's dictionary program doesn't know about. They kind of have to do that because not all Windows users have MS Office installed. What would be nice is (1) for Microsoft to publish hooks into its dictionary monitor so third-party apps could write to it, and (2) addictivesoftware.com employed those hooks for write updating.

What would really be nice is if Microsoft simply included the dictionary monitor as part of a Windows service included in the OS so everyone had it (not just Office users). But I guess that would be reaching.  :D

8
If you want to "experiment" because I'm not sure this will work, try adding a line to your ConfigDir.ini that says:
DICTIONARYDIR = put_full_path_to_another_app_directory_containing_your_other_custom.adu

and then see if it shows up in your chs spell configuration list of dictionaries available.
I'm assuming DICTIONARYDIR is providing read-only access to third-party custom.adu files, correct? After all, if it write locks them, that will hang any third-party applications when they try to update their private copy of custom.adu. Of course, if a program only briefly write locked custom.adu, that may circumvent this problem.  After all, end-users wouldn't be updating several custom.adu spell dictionaries at once.

Can I specify several directories in DICTIONARYDIR separated by semicolons?

What we really need is a Windows dictionary service that provide "write arbitration" for dictionary resources across the OS, but writing a monitor for doing that is another problem. :-\

9
For all of my programs, if you edit a file called ConfigDir.ini in the application directory, you can override the default configuration directory of any of my programs.
I edited ConfigDir.ini so
  CONFIGDIR = %MYDOCUMENTS%

but I may change it to
  CONFIGDIR = %APPDATA%
later so my setting roam between different computers in my domain. At any rate, everything is working as it should. Thanks a bunch.

Let me know if it becomes possible to share the same custom.adu dictionary across applications. If it's not (say due to constant write locking), then has anyone setup file mirroring between several custom.adu files (say with synctoy.exe) so they automatically synchronize upon logging off?

10
http://www.donationc...AndSpellPortable.zip
or http://www.donationc...elpAndSpellSetup.exe

I tried the second one, and it stores custom.adu in
%HOMEDRIVE%%HOMEPATH%\DonationCoder\Clipboard Help+Spell\Dictionaries\custom.adu

and that location appears to be hard coded:(

I was expecting to find it in the roaming data profile:
%APPDATA%\DonationCoder\Clipboard Help+Spell\custom.adu

but because it's hard coded into the %HOMEPATH%, I can't put it there.  But at least it's not in %ProgramFiles% anymore. That directory isn't part of my regular backup set, so I lost my original custom.adu file after a disk failure.

-----

On a totally separate note, someone suggested that desktop installs place data in the roaming data profile, %APPDATA%; whereas, portable app installs place it in the local data profile, %LOCALAPPDATA%.  Is this really true, and if so, why is this distinction made?  Why not place everything in say %LOCALAPPDATA%?

Is there a simple way to sync %APPDATA% (roaming) and %LOCALAPPDATA% (thumb drive) on Windows 7?  (Which forum should I be using for this question?)

11
Clipboard Help+Spell / Custom spelling dictionary locations
« on: August 13, 2013, 06:43 PM »
On Windows 7, I've tried defining the file
  C:\Users\%USERNAME%\AppData\Roaming\custom.adu
Well,... attempting to locate my custom dictionary, custom.adu, into my roaming profile (i.e. %APPDATA%\DonationCoder directory) fails altogether.  So are all custom dictionary files "hard coded" to be in the %ProgramFiles%\Clipboard Help+Spell\Dictionaries directory no matter what?

The main problem with this latter approach is that the "Standard User" doesn't have write access to files in that program directory on Windows 7 (or Vista) for security reasons.  Of course, the administrator can copy a user's custom dictionary into that directory, then give him full control (which is what I did).  Kind of weird though.  Why not just use the normal way and put the user data in the roaming profile (%APPDATA%) as expected?

Another problem is that one's custom dictionary won't roam between computers as expected.

The other problem is I don't backup the %ProgramFiles% directory (Why would I since the programs have to be reinstalled on recovery anyway?) so my custom dictionary won't be backuped by default.

Is there an advantage in using the %ProgramFiles% directory for user data that I don't know about?  Perhaps that approach might be more compatible with older (and less secure) OSes.  But even older programs often use %APPDATA% for their user data.

12
Is it even possible to share a custom.adu spelling dictionary between applications without creating write conflicts? For example, can Clipboard Help+Spell and The Forms Letter Machine share the same custom.adu dictionary?

On Windows 7, I've tried defining the file
  C:\Users\%USERNAME%\AppData\Roaming\custom.adu
for several different programs, but there seems to be some conflicts. Understand, some of these apps (e.g. Clipboard Help+Spell) remain open all the time, although I'm not sure its dictionary files remain "write open" all the time.

On a separate note, can a read-only language dictionary like american.adm be shared okay?  If so, where should the single copy be saved on Windows 7?

13
- type (for example): start /low notepad.exe

Put the above in a batch file,... associate the desired icon with it and done.

So can this be done using a Windows resource kit utility that would patch the registry for this program's install such that it would always run in low priority without using a batch or command-line pif file? I'm guessing "yes", but I need to know the name of the resource kit utility so I can read up on it.

I would like to pose the same question for the Flash install or Firefox Plugin Container install. Darn Flash ads make my browser slow and unusable. I wish the ads would use canvas and HTML5 instead of Flash.

14
Well, what else can it be? Sometimes (75% of the time) I can run the game and exit without any problems. Other times, if I enter, then exit the game for 5 seconds, things are sluggish afterwards. Logging out and back in always fixes it immediately.
That is a very good question :) - I just wouldn't expect anything as "near kernel level" as thread scheduling to be fixed by a mere relog.

Well maybe the working set (max memory allocation, max time slice) gets modified. But a shared resource could also be to blame.

It might be the game latches on to a Windows resource and fails to release it upon exiting. Logging out simply releases that resource. I've tried debugging it with process explorer without success.
Process explorer would be my best bet to start with. There's nothing fishy to spot? Is CPU and memory usage (both the overall as well as looking at individual processes) at normal levels, or is anything spiking? Can you describe the effects of the sluggishness?

The idle process is using up all the CPU cycles in process explorer when the system is sluggish.  It may take 6-8 seconds to simply open the WinXP START menu--unbelievable. Other windows open slowly as well. Programs seem to run okay, but everything about the UI is really slow. Upon trying to log out, sometimes it takes Windows two minutes to close programs.

The program is MahJongg Master 4.0 (2002). It's a very well designed board program, but it hogs every CPU cycle when it runs. What's weird is that 75% of the time Windows is fine after it exits. I wonder if I configure it to not use GPU hardware acceleration if that would make a difference?

What about knocking down the execution priority of the Firefox Plugin Container executable so Flash ads aren't stalling the browser? Is this a question for the Firefox forum?  Can Flash itself be tamed by reducing its execution priority? Shouldn't there be something in the Windows resource kit for doing that?

15
It's so bad, that after quitting this program, the time-slice quantums are adjusted by Windows XP to make all the other programs sluggish.
What? :huh: - is that actually what happens?

Well, what else can it be? Sometimes (75% of the time) I can run the game and exit without any problems. Other times, if I enter, then exit the game for 5 seconds, things are sluggish afterwards. Logging out and back in always fixes it immediately.

It might be the game latches on to a Windows resource and fails to release it upon exiting. Logging out simply releases that resource. I've tried debugging it with process explorer without success. What other monitoring utility would you recommend that shows system resource allocations?

As for flash, it's a well-known hog, and I doubt there's much you can do about it in Firefox.... If Process Tamer on plugin-container doesn't help,...

I've never used Process Tamer. I was hoping to setup some special priorities on these problem executables so I wouldn't need Process Tamer in the first place.

16
I have one game program that sucks CPU time, but it's only this program. It's so bad, that after quitting this program, the time-slice quantums are adjusted by Windows XP to make all the other programs sluggish. The only way I know to reset these quantums is to log out, then log back into Windows again. Is there a resource kit program that can be used to install this one program (executable) at a lower priority?

I also have exactly the same question for the Firefox plugin-container executable that seems to hog CPU cycles when visiting certain web pages with many DoubleClick Flash ads. The Chrome browser doesn't have this problem.
C:\Program Files\Mozilla Firefox\plugin-container.exe

Other than that, all programs behave well on my Windows XP system, so I would like to avoid solutions that would affect all other well behaved programs.

17
I'm trying a fix in the new version about to some out, let me know if you notice any improvement.
Yes, I'll check for the race condition. But I may need to run it for a week or two before I can say for sure if it actually went away. With these nondeterministic problems, it's hard to be sure.
I can now confirm that the new-clip sound is played when the CTRL-ALT-C fails to capture the new clip with version 2.17.1. But it's also worth noting that this now occurs very rarely (under WinXP 32-bit). Something must have changed to reduce the affect of this race condition.

18
I'm trying a fix in the new version about to some out, let me know if you notice any improvement.
Yes, I'll check for the race condition. But I may need to run it for a week or two before I can say for sure if it actually went away. With these nondeterministic problems, it's hard to be sure.

19
Living Room / Re: Google announces micropayments via Google Wallet
« on: October 04, 2012, 05:04 PM »
The service gives users the ability to sample the content before they buy,... Those who are not satisfied can get their money back within 30 minutes.
I see an article ..., read it, decide it is crap, and get my money back. The content provider thinks I am abusing the system, tells Google, and they disable my Google account.

Probably not on the first refund attempt, but if you asked for 9 refunds over a week, then yes. The question remains what the user's refund rate has to be before it's considered abuse. That's why this service is considered experimental; it will need some tweaking. Perhaps Google sends the user an early warning if he's approaching his refund-rate limit.

20
Living Room / Google announces micropayments via Google Wallet
« on: October 04, 2012, 04:14 PM »
Google has announced a new feature of Google Wallet, a micropayments service, that will let websites collect small payments from visitors for services/products via a single click. Google Wallet micropayments

This service will also allow web visitors to sample services, and then get a refund within 30 minutes, if they don't buy. This micropayment feature is in trial (beta) at Google Wallet as an experiment.

21
One is that the new clip was never captured at all by the CTRL-ALT-C operation.
It could be that when its sending the simulated Ctrl+C keypress, it's getting tripped up over the alt key still being held down, or over losing focus in the active window--that's the kind of thing that could happen unpredictably.
Perhaps you could "temporarily" add a timed delay between the simulated CTRL-C and the next operation to see if that fixes it.  If it does, then you've discovered where the race condition is.  Once you know that, you can design a callback completion routine so you don't need the timed delay.

Also, rather than using a callback routine, you could replace the timed delay with a semaphore guard.

22
Have you tried searching the entire clip database for the text to see if maybe its just going into the wrong group?
I'll try that next time it fails. That's an interesting idea.
The problem occurred again, and the new clip isn't present even after searching the entire database. But I did try pasting what was in the current Windows clipboard buffer and, to my surprise, it's not the new clip. Rather, it's the previous clip in the New folder.

So there are several possibilities here:  One is that the new clip was never captured at all by the CTRL-ALT-C operation. Instead, the previous clip was copied from the New folder to the Windows clipboard buffer instead when the captured sound was played.

The other possibility is that the new clip is placed on the Windows clipboard buffer okay, but then immediately overwritten by the last clip in the New folder when the captured sound was played.

Do you have any other questions?

What confuses me is why this failure is non-deterministic so it can't be easily reproduced?  It's as if there's some kind of race condition that occasionally is met, but only rarely. Are there two asynchronous Windows events that are colliding with each other 10% of the time?  Perhaps you need a semaphore to keep these two asynchronous Windows events from accessing the same shared resource simultaneously.

I see this kind of thing with device drivers because they service many "incoming" (outside) asynchronous requests, but not so much with OS-events within applications.

23
Have you tried searching the entire clip database for the text to see if maybe its just going into the wrong group?
I'll try that next time it fails. That's an interesting idea.

Since the CTRL-C function works correctly, why not simply have the CTRL-ALT-C function call the CTRL-C function as a subroutine, then open the CHS window with "New" folder selected? In other words, simplify the code to fix the hidden problem.

24
Clipboard Help+Spell / Re: Append function
« on: September 17, 2012, 03:42 PM »
appending clips was going to be added to CHS, has this been done?
I think the existing merge function is much more powerful than any append function because you can selectively pick which clips you want to merge and which can be ignored (as append mistakes). And with the SHIFT key, you can quickly select contiguous clips to merge.

I wouldn't add too many redundant features; otherwise, CHS could get too confusing.

25
As for the not always capturing--that sounds like a real bug i haven't seen.. Any more clues about it?
You worked on this bug before about 1.5 years ago, and the fixes you added did improve it. But occasionally, it still fails. What I can tell you is the capture sound always plays even when CTRL-ALT-C fails to capture anything. I'm usually doing this capturing in my email client (Courier) to correct spelling, although other apps are affected as well. I'm running Windows XP SP3 and CHS 2.11.01.

I'm mentioning this bug now because you'll be looking in this area of the code again when adding the switch to "New" folder feature.

Since the sounds always plays and the CHS window always comes to the front (as expected), I'm now wondering if the clip is put on the Windows clipboard buffer okay, but the clip just occasionally fails to show up in the "New" folder for some reason when CTRL-ALT-C is used? I guess I could try a paste operation upon failure and report back to you. Give it a couple weeks to happen again, then I'll report back.

Pages: [1] 2 3 4 5 6next