What's new

Calling All Programmers!!!

OP
Xade

Xade

Irrelevant Insight
Hey-hey!

Sorry for the belatedness of the of the reply; I've had a monster of an essay to be taking care of for the past couple of evenings. Now that it's out of the way, let's get back to business...

Potential Fixes:

- A renamed/deleted file that has a shortcut attributed to it seems to severely jam the program. Try it - not only will an error message by presented, but other dialogue boxes will also appear. On top of this, if you select to terminate the 'ShellExecute API', the program won't, and will instead simply not allow you to navigate away from the error message. If you quit the program and continue, it crashes. Is there not some simpler way of dealing with errors such as halting the process and instead displaying a 'File or folder not found!' tooltip??!
- Shortcuts can still be assigned to My Computer, the Rececycle Bin et al via right-clicking them, but an actual shortcut can't be created. Perhaps remove the option to shortcut all "special" items other than files and folders?
- Dialogues still often seem to appear "beneath" windows, but you'd explained you'll address this, right?

Potential Tweaks:

- ...Potentially integrating the hotkey stuff into the GUI? Although you *did* say that this would probably be very time-consuming.
- ...?!

Potential To-Do List:

- Bug fixes and tweak implentations above.
- Changing the cosmetic side of things; icons, text, window headers etc... perhaps this will be done after the final beta?
- Test, test, TEST!!!

This release was easily the best yet, and seemed very stable. If everything listed above is sorted, I see no reason why the program can't be publically released after we've done enough further testing

Congratulations; not far to go now! :p Looking forward to the latest and greatest, as ever...
 

Doomulation

?????????????????????????
Xade said:
Hey-hey!

Sorry for the belatedness of the of the reply; I've had a monster of an essay to be taking care of for the past couple of evenings. Now that it's out of the way, let's get back to business...

Potential Fixes:

- A renamed/deleted file that has a shortcut attributed to it seems to severely jam the program. Try it - not only will an error message by presented, but other dialogue boxes will also appear. On top of this, if you select to terminate the 'ShellExecute API', the program won't, and will instead simply not allow you to navigate away from the error message. If you quit the program and continue, it crashes. Is there not some simpler way of dealing with errors such as halting the process and instead displaying a 'File or folder not found!' tooltip??!
Ah, but this IS a problem. Basically, the application tries to execute the commands. Sonetimes, the ShellExecute API stalls. In other words, it's out of my territory. To safe guard it, I *tried* to execute that API on a different thread so that I could detect when it had stalled and if it had, then call the TerminateThread API to terminate that thread. It otherwise stalls the application, so there's pretty much nothing I can do. But there may be some additional work arounds that I can do.

- Shortcuts can still be assigned to My Computer, the Rececycle Bin et al via right-clicking them, but an actual shortcut can't be created. Perhaps remove the option to shortcut all "special" items other than files and folders?
That's a side effect of the current shell handling and nothing can be done about that at the moment.

- Dialogues still often seem to appear "beneath" windows, but you'd explained you'll address this, right?
Yes, I *think* it's simply because those windows and messages are supposed to be for the application only, not for other folders / windows. Not sure how to address this, except make it always on top (but that's kinda hard), but I will try to find a way.

Potential Tweaks:

- ...Potentially integrating the hotkey stuff into the GUI? Although you *did* say that this would probably be very time-consuming.
Yes, that's true unfortunaly. The current system works fine and will have to do for the moment.

- ...?!

Potential To-Do List:

- Bug fixes and tweak implentations above.
- Changing the cosmetic side of things; icons, text, window headers etc... perhaps this will be done after the final beta?
- Test, test, TEST!!!

This release was easily the best yet, and seemed very stable. If everything listed above is sorted, I see no reason why the program can't be publically released after we've done enough further testing

Congratulations; not far to go now! :p Looking forward to the latest and greatest, as ever...
 

MarkC

New member
I'm just connecting the dots here... I don't mean to rain on anybody's parade
:unsure:
From: The 46 Best-ever Freeware Utilities
...A final option is not really a hotkey utility at all but achieves the same result by using "magic words." SlickRun [3] places a tiny text box on your screen and when you type specially assigned words into the box, it will launch a program, go to a web site or whatever. For example if you type "mail" it can launch your mail reader. Type in "46" and it can take you to the web page of the "46 Best-ever Freeware Utilities." Of course, it's up to you to define these magic words and you can have as many as you want. It all works very neatly with some really nice touches like auto-complete for your magic words which means you only have to type in two or three letters and SlickRun will complete the rest. Nice too, is an eyedropper tool that allows you to identify a program you want to "hotkey" just by clicking in its application window. There's also a built-in note jotter and a calendar date display. It requires Win 98 or later.
[3] http://www.bayden.com/SlickRun/ (168KB)
 

smcd

Active member
Nice, MarkC. Never knew it existed. As an aside, more options are always a good thing :p
 

Doomulation

?????????????????????????
Bah! Mine shall be the best! :p
Ok, ok, seriously, that's a nice thing to hear. Might actually try to include a feature or two that program features that quicklinks does not.
 
OP
Xade

Xade

Irrelevant Insight
alright, but that program is WAY too complex. perhaps have it so Quicklinks v1.0 just has the features we've talked about and all the bug-fixes... THEN, post-1.0, extra stuff gets added?

looking forward to the next build :p
 

Doomulation

?????????????????????????
Hmmm... a wondering here!
To enhance (or get around) the lock-up when trying to execute bad commands, I've been pondering about a small check to clear out these bad commands.
First check is when you actually try to run the command I think... or was it when you tried to save it? Err, anyway, a check should be done at both moments there so no bad command is executed.

But I've also wondered that maybe the app should do an active search for bad commands, probably as a background process so that it won't buggle down load time (and it just might with many commands).
When it's done and it has found bad commands, it might prompt the user that it has found bad commands and tell the user that he or she should probably go to the manage commands dialog and fix them.

Question is also, if the user accesses the manage commands dialog BEFORE this check is complete, should the application tell the user that the check isn't done? Should it continue and update the manage commands gui if it finds any more bad commands? Should it show progress like 50% done?

Should I just postpone it altogether, since this is probably nothing the end user have to worry about?

What do you think?

I'm currently busy, but before the next release, I want to get this feature in (if applicable), and the edit feature. Dunno about the windows hiding one :(
Also, what about the not running on some machines issue? Does it still happen? If so, on what machines (specs, Os, etc)?
You could probably hand out betas to more people to make sure it's stable and doesn't have many bugs (or at least to see if people are displeased about something). I would rather get out a nice 1.0 release so that people won't complain (even if it's you :p) about a new release soon.
And then there's the minimum requirements. Are everyone alright with the minumum specs being DirectX9c and Windows 2000?

These issues should be addressed.
 
OP
Xade

Xade

Irrelevant Insight
hey-hey...

surely a progress bar wouldn't be needed - the check would likely be instant unless someone had an *extremely* slow hard drive.

perhaps the program can scan the list every half hour or hour in the background? it would probably require minimal processor power, and would only notify the user if it found shortcuts that were dead. if it *did* find links associated with moved/deleted files, perhaps it could list them/highlight them in the Command Manager and ask the user to sort them?

...HOWEVER, while this would be a brilliant feature, and *should* make v1.0... the program has refused to run on *two* machines i've tested it on, both running windows xp and very powerful in general.

the error log from one of the machines is as follows:

Starting Quicklinks version 1.0 Beta 4.
Settings:
Start with windows:
Integrate with shell:
Use sounds:
pOptionsDlg->ShowWindow(SW_MINIMIZE) FAILED in [Init].
pManageDlg->ShowWindow(SW_MINIMIZE) FAILED in [Startup].
pGraph->RenderFile FAILED in PlayVoice with HRESULT: 0x80004005 (E_FAIL)
pGraph->FindFilterByName FAILED in PlayVoice with HRESULT: 0x80040216 (VFW_E_NOT_FOUND)
PlayVoice: Was trying to play file [Sounds\Greedy.mp4].
PlayVoice FAILED in [Check For Other Instances] with HRESULT: 0x80040216 (VFW_E_NOT_FOUND)

no error message was given. the program simply didn't load.

i can provide more system specs if you want. ...ideas?! :(
 

bcrew1375

New member
That's the same problem I had. Windows XP won't recognize them as valid files. I think I got the program to run by moving the sound file out of the sound directory.
 

Doomulation

?????????????????????????
Okay, where on the harddrive (ie path) does the program lie? Obviously it isn't an OS related matter.... did it work if you deleted the sounds? This needs to be made first priority!

Btw, that logs indicates that it detects another instance of quicklinks running. Are you sure it's the first time you run it? Does Quicklinks run in the background? Or maybe it is merely doing something wrong...

Does those machines have any settings? If so, what are they (options, commands)? Does clearing / removing them work?
Perhaps it's related to the sound files? I think I might check myself.
I should include a little pathway logging in the next version, which isn't too far off.

EDIT: Whoa, hey! Lucky! I uninstalled ffdshow and Haali's Media Splitter and the application didn't run! I'll get you this time you stinking bug!
BTW, you needn't worry about what the application does. It runs all the threads at idle, which means that if some power hungry program runs, it will steal all the processing power from Quicklinks. It will have no performance impact on the system.
 
Last edited:

Doomulation

?????????????????????????
Hmmm... since I'm here, I might as well let you test this...
The "not running" problem doesn't seem to occour of my test computer with this new version, so try it out a little, will you? And do hope that there is an end to most of the issues.

- Bad command check in the background. This might take some time, especially if there are many commands. Does it only once, though, as of yet. It consumes about 10% cpu power.
- Manage commands dialog now displays if a command is bad or not.
- A background thread also checks realtime and updates the gui with the status of new commands when found!
- Edit has been added.
- Much, much, much code has been moved out of the dll to the actual application. Now the dll is much smaller =] But the size of the exe has gone up... I think. :p
- Shell app has been re-written with improvements. Since the manage commands dialog no longer resides in the dll, it actually communicates with the main app to display the register command dialog. If quicklinks isn't running, then it starts it. Much work went into that.
- Quicklinks is fully multi-threaded! It has like 4 threads or something running in the background! It even uses synchronization for smart functionality! Hurray for quicklinks!
- All commands can now also use arguments. With this, you will also be able to launch tasks like rundll32.exe (rundll32.exe dll arguments)! Since some applications (like ffdshow) uses this method.
- The tray icon appears in the tray when Quicklinks is running! Is now says "Loading..." ;)
- Also when trying to open the manage commands dialog, it will display a loading message while it fetches the commands (if >= 100).
- Also displays a terminate message when dying.
- Icon ALSO displays the progress of the bad commands check! If there are many commands, this will be going on for a while.

As always, extract this archive to test it. Remember to overwrite the old version, as this isn't a complete package.

Oh yeah, the commands you've previously added won't work in this version because I've added arguments. Follow the upgrade procedeure below. I need to hurry... the list is too long :cry:

Happy testing! This should be an interesting release! :king: :drool:

Upgrade:
Rename Software\Doom's Infested Key\Command Launcher to Software\Doom's Infested Key\Quicklinks. Run upgrade utility.
 
Last edited:
OP
Xade

Xade

Irrelevant Insight
...Doom!

Hey, sorry, my PC's PSU got toasted the other day - I've just got my machine back online.

As for Quicklinks...

"...Quicklinks is already running..."

I can't load it at the moment :S

Starting Quicklinks version 1.0 Beta 4.
WARNING: Found a previous instance of Quicklinks running!
CoCreateInstance FAILED in InitDShow with HRESULT: 0x800401f0 (CO_E_NOTINITIALIZED)
InitDShow FAILED in [Check For Other Instances] with HRESULT: 0x800401f0 (CO_E_NOTINITIALIZED)
 

Doomulation

?????????????????????????
Well now that's funny... are you you don't have it running? Did you check in the task manager?
Otherwise I will incorporate a new check in my next build which will be even more interesting... hehe.
 

bcrew1375

New member
Tried it. Says it can't find DirectInput.dll. I first tried putting dinput.dll in the folder and renaming it. Told me it couldn't find DI_Init in the DLL. I then tried putting the Microsoft.DirectX.DirectInput.dll file from the Microsoft .NET folder in to the Quicklinks folder and renaming it. I got the same message. Any ideas?
 

Doomulation

?????????????????????????
bcrew: Of course it won't work, silly! You need MY Dinput.dll. It isn't a public dll. So I guess you didn't extract over a previous version or it must be a very old one.
So I added all the necessary files (excluding sounds) in this package.
News:

- Changed interface! A new cool tree control is now used.
- If it cannot find the command, it gathers and presents a list of commands that are similar to the one you entered. It will find those that begin with the text you've entered.
- Working directory added. Now you can make applications launch in the directory you want!
- Better instance checking. Now using shared memory instead of trying to find a window named "Quicklinks." This should hopefully remove your error.
- Changed the upgrade utility to include creating default working directories. This utility still won't run if you've already converted your commands to the new beta style. However, the application WILL run even if work dir is missing.
- Shell updated again. It now uses the bit of shared memory exposed by the application to find if it's open or not, and if it is, find the handle to the main window in the shared memory. Much more fail safe.
- I can't remember anything else.

So that's it for the new version. Now get cracking! :naughty:
I'm working on an update which will be even cooler! All thanks to the new control source I found =]
So, all in all, I think this is a perfect final version when a little tweaking and the last bugs are ironed out. But what about the icons? I need them if I am to put them into the app.

EDIT: Whoops, looks like I put more files in that archive than necessary. Oh well, it isn't worth a re-puload. Just extract all the files inside the Beta 5 folder.
 
Last edited:
OP
Xade

Xade

Irrelevant Insight
A-hoy-hoy...

Let's save the pleasantries for later:

Potential Bug Fixes

- FOLDERS can no longer be shortcutted.
- On one of the systems I tested on, the shell menus simply didn't work at all; no right-click shortcutting was possible.
- Shortcuts can't be applied via right-clicking if the Command Manager screen is already open.
- Shortcut key manager appears under other windows - way to sort this?

Potential Tweaks

- Compacting the DLLs/incorporating them into the actual executable? This would make running the program easier...!

Potential To-Do List

- Bug fixes/tweaks given above.
- Icons, readme, re-wording of the program's text itself (my responsibility).
- Another (last?) beta release; final testing...

Getting close, although that folder/shell integration problem obviously needs a pretty high priority here.

Get an update posted ASAP Doom - I'll finalise the icons and text for inclusion provided the program is completely working!

...Merry Christmas! :p
 

Doomulation

?????????????????????????
EDIT: Alright! Bugs fixed!

Xade said:
A-hoy-hoy...

Let's save the pleasantries for later:

Potential Bug Fixes

- FOLDERS can no longer be shortcutted.
Simple fix ;)

- On one of the systems I tested on, the shell menus simply didn't work at all; no right-click shortcutting was possible.
I think this is fixed. It may be to a bug in the Shell code which I noticed and fixed.

- Shortcuts can't be applied via right-clicking if the Command Manager screen is already open.
Fixed.

- Shortcut key manager appears under other windows - way to sort this?
Are you sure? It might be that it falls underneath other always-on-top windows - that's normal, but otherwise I see no such issue.

Potential Tweaks

- Compacting the DLLs/incorporating them into the actual executable? This would make running the program easier...!
Hehe... let's see:
- DirectInput: Pain :p
- Tooltips: Yes, might be possible.
- Quicklinks.dll: Nope. Both Shell and Quicklinks uses shared code within that dll - hence the dll!

Potential To-Do List

- Bug fixes/tweaks given above.
- Icons, readme, re-wording of the program's text itself (my responsibility).
- Another (last?) beta release; final testing...

Getting close, although that folder/shell integration problem obviously needs a pretty high priority here.

Get an update posted ASAP Doom - I'll finalise the icons and text for inclusion provided the program is completely working!

...Merry Christmas! :p
And merry christmas to you too... :)
Fixed the bugs!

Still, I need to perhaps add the same tweaking available when choosing commands in the manage commands dialog to the shell (ie, select default work dir, process shortcuts).
 
Last edited:

Doomulation

?????????????????????????
I suggest you download the runtime libraries I've actually submitted somewhere in the threads to gaurantee that it should work as it should. To my knowledge, there are different versions of the runtime (like two mfc71.dll), so there may be incompabilities.
 

Top