526
Finished Programs / Re: Modified AltEdge
« Last post by worstje on November 24, 2010, 10:36 PM »I never used the original, and probably won't use yours. But thanks for sharing; I am sure someone will find a use for it! 


After tons of 'wtf' and 'what were they smoking', I am starting to see a tiny little bit of progress on this project. (Word to the wise: learning a new programming language and a new framework at the same time is pretty much asking for trouble.)


| Application Name | JottiQ Jotti's malware scan is undergoing changes... changes that JottiQ versions before v1.2.0 are not compatible with. Please update your JottiQ! |
| Version | v1.2.0 |
| Short Description | Jotti's malware scan provides a great service. Yet, it is so cumbersome to use. This program changes that. |
| Supported OSes | Windows XP+, 32 and 64-bit |
| Web Page | Website |
| Download Link | (open directory of released versions) |
| System Requirements | |
| Version History |
|
| Author | worstje |
| Screencast |
JottiQ
v1.2.0 (2015-03-24)
http://whitehat.dcmembers.com/
WHAT IS JOTTIQ?
---------------
JottiQ is a tool that makes it more convenient to use Jotti's malware scan,
which is an online service optimized for one-by-one scanning of files you do
not trust.
Its purpose is that of an investigative tool, for when you do not trust a file
you came across but your current security software seems to think it is as
harmless a file as they come. It is not meant to replace your virus scanner,
nor is it meant to scan the heaps and heaps of nasty things that float around
on your computer because you are too cheap/lazy/picky to get software that is
meant for that purpose.
JottiQ is meant for a _low number of files_ that you do not trust more-so than
the rest of your computer. And I, the author of JottiQ, feel you should never
trust your own computer to begin with. But that is a story for another day. :-)
For more information, see the official JottiQ (NANY 2011) topic:
https://www.donationcoder.com/forum/index.php?topic=24663.0
WOOO, I LOVE THIS LADY BUG
--------------------------
That's awesome. Glad you enjoy it. Now, if you are one of those rare few who
insists on showing gratitude for a freeware application like this, I'd like you
to remember a few things before you go nuts with that wallet of yours.
- JottiQ would not exist without Jotti's malware scan. It is that simple.
- Jotti (the author of the malware scan) does not accept donations, and only
has a few minor ads up on his site. He wishes for the service to remain
free. At present, the service is basically kept afloat by several parties
who pay for some other services, and the free Jotti's malware scan service
basically survives as a consequence of those other sources of income.
Are you in a position to order any sort of extended services from Jotti?
If so, please consider what he may do for you(r company), and in the
process help out an awesome free service to continue its existence.
So you tell me - who do you really love? No lying!
If you insist on supporting JottiQ (this application, not the online malware
scanner) then I will begrudgingly accept any donations made through the system
DonationCoder.com has in place for such acts of gratitude. While you are there,
you might even find another application of your liking, or worse, thank their
creators in a similar way! :-)
(And if you mean you love the lady bug ICON, well... there is a Credits section
at the bottom of this document with a link to the author who created it.)
REQUIREMENTS
------------
Like so many applications nowadays, JottiQ does not stand merely on its own two
legs. In that way, it is much like a person, who stands by virtue of the local
cobbler to make the shoes, the tailor who makes the clothes, the supermarket
that allows us ignorance in the ways of the hunt. No, JottiQ is a sorry beast,
demanding the following of its environment in order for it to be a productive
member of the binary society that makes up a computer.
[ ] Windows XP or newer. Both 32-bit and 64-bit varieties are supported.
[X] Microsoft .NET Framework 4 Client Profile
This needs to be installed for JottiQ to work at all. If you already
have the far bigger all-in package of the .NET v4 Framework installed,
you should already have this.
http://www.microsoft...4f-97b6-fb17111cf544
[X] Microsoft Visual C++ 2010 Redistributable Package (x86)
This needs to be installed on both 32-bit AND 64-bit systems for the
file context menu to work as one would expect.
http://www.microsoft...3A-A423-37BF0912DB84
[X] 64-bit: Microsoft Visual C++ 2010 Redistributable Package (x64)
This needs to be installed ONLY on 64-bit systems for the file context
menu to work as one would expect.
http://www.microsoft...55-81BF-9350143D5867
(The installer will make sure that items marked with a [X] are met, and where
possible offer to install them for you as a part of the ride. In case you get
JottiQ through an archive only, it is your responsibility to make sure these
requirements are met.)
Do you have all those things, and JottiQ still lies around on your couch,
unwilling to go to work and rather act like a dead corpse? Leave a message at
the official JottiQ topic on DonationCoder.com and we may just find the magic
words to breathe life into this cutesy lady bug. :-)
VERSION HISTORY
---------------
v1.2.0 (2015-03-24)
Compatibility release. Jotti is undergoing some changes so we must too.
Upgrading is highly recommended; previous versions of JottiQ may break or
otherwise show reduced functionality as Jotti improves his service.
v1.1.1 (2011-07-12)
Any new version released suffers from a few hiccups, and v1.1.0 was no
different. Thankfully, all this release does is pat the proverbial belly.
Added: A setting that, if enabled, lessens the scrutiny given to the
remote server of Jotti's malware scan to determine its authenticity.
'Ignore certain SSL certificate errors' is only useful on a few
specific configurations, and should not be enabled unless you get an
error like the following in the Connectivity Test:
'The underlying connection was closed: Could not establish trust
relationship for the SSL/TLS secure channel.'
Changed: dcuhelper.exe was updated to v1.10.01 released on July 12, 2011.
v1.1.0 (2011-07-01)
Six months after the official release, it is time for a well-deserved
update. Sadly, there isn't much one can improve in a tool with a simple
purpose. However, I hope this new version will entertain.
Added: Forks support. Also known as 'Alternative Data Streams', these
are a well-hidden feature of the NTFS filesystem which provide for
equally well-hidden pseudo-files attached to existing files. Most
programs are unable to read them, no less act on them - which makes
this a feature that truly improves Jotti's malware scan.
Added: Proxy server support.
Added: Connectivity test for troubleshooting issues. Some beta-testers
for this version had problems with proxy server support, but it will
hopefully prove useful for all parties.
Added: A builtin 'whitelist' for forks. The feature is sometimes used
for legitimate reasons, and one of those affects nearly every file
downloaded. The whitelist exists for speeding up processing only;
security-minded (distrusting?) individuals are free to enable the
option that forces these whitelisted forks to appear in the queue.
Added: A 'whitelist fork by name' option. If the precise comparisons on
a possibly whitelisted fork prove troublesome, this enables one to
consider the fork safe by proxy of its name. This feature as a work-
around for 'Zone.Identifier' forks encoded in different formats than
I have been able to test with - so if one finds a 'Zone.Identifier'
fork that is not whitelisted, I request that this forks is saved to a
file and sent to me at: jottiq-whitelist (at) whitehat.dcmembers.com
so I may inspect it and if is found safe, add it to the whitelist in
the next version. TL;DR? Don't enable unless you know you need it.
Added: The queue context menu now offers an Actions sub-menu. These
contain actions that affect the selected objects (files and/or forks)
in the queue physically. There are currently two items in this menu:
- Delete Object(s): This either deletes the selected file(s)
permanently, or it removes the selected fork(s) from the file.
Do note that deleting a file also deletes its forks, but that
deleting a fork on a file leaves the latter intact. I remain of
the opinion that JottiQ is an investigative tool rather than a
cleaner, but... the peoples wishes are clear and forks are hard
to delete, so deleting files is a logical consequence.
- Save Fork As: This saves the contents of a fork to a file. This
does not work for ordinary files as it would be a mere 'Copy'
operation that may or may not bring expectations along with it;
instead it is to be used as an inspection utility for a resource
otherwise difficult to examine.
Added: An 'Add file(s)' feature is now available in the toolbar. It
completely slipped my attention in the 1.0.x versions, for which
my apologies. Rather late than never.
Removed: The 'Add Running Processes' functionality is no longer present.
It was determined to be an inappropriate feature that only delivered
half work, and to boot the reason why Jotti's malware scan suffers
such ungodly waiting times during the waking hours of the western
world ever since JottiQ's release.
Fixed: No more crash when down-sizing the amount of worker-threads.
Fixed: Legibility of items on right pane could suffer in certain colour
configurations; now it uses proper system colours where applicable.
Fixed: Zero-byte items were not being removed by the manual nor automatic
'Remove safe items' features.
Fixed: Deleting items from the queue while it was being processed no
longer makes the worker-thread go M.I.A. until it finishes its work
off the screen; it now terminates and moves on to the next item in
the list as soon as possible.
Changed: Uploading should be a little bit more efficient now.
Changed: Fancy progress bars that show upload progress are now in place
as opposed a boring textual description.
Changed: Redesigned the Settings window with clearly named sections and
recognizable icons in order to make JottiQ configuration more
accessible.
Changed: The instruction text in the main screen no longer suggests
one to 'start processing' when processing is already enabled.
KNOWN ISSUES
------------
1) The installer can only delete settings for the current user. This is not
something that I have any feasible way of changing, and in general all
programs suffer this issue at uninstallation time. Although I do welcome
any and all suggestions on the topic, I doubt this will change. (This
includes the shell context menu option, if it was installed per-user.)
2) The installer component 'Explorer Integration affects All Users' determines
the creation of the 'MachineInstallation' file. By default it is off,
allowing every user to determine the presence of a file context menu for
themselves (and also avoiding nasty UAC dialogs in the process.) Once
this file is present, one needs Administrator rights in order to turn the
file context menu on or off.
Given point 1), if you install to make JottiQ available to multiple users,
it is recommended to install with this setting turned on so that any
registry pollution stays at a minimum. (Unless of course you are willing
to manually turn off the file context menu for every single user
beforehand. Of course, the best option is to never uninstall JottiQ!)
4) You may be instructed to reboot by the uninstaller. Or by the installer
if/when you are upgrading JottiQ to a new version. This is most likely
because explorer still has the shell extension loaded, and killing
explorer the hard way and restarting it is a very user-unfriendly task.
As such postponing the deletion or replacement operation till reboot-time
is the user-friendliest alternative. This is unlikely to change in future
versions as it is a long-standing Windows issue for not having a feasible
method to tell Explorer to unload its shell extensions.
CREDITS
-------
JottiQ is the brainchild and creation of Jan Wester. Now with the formalities
out of the way, let's carry on to the credits that actually count.
The list below is a rough and partial listing of the various credits that are
given in the 'About JottiQ' dialog. For the full list, with all links in all
their ease and glory, have a look there.
Thanks to...
* Jotti for Jotti's malware scan and going out of his way to support this
application after I contacted him with the idea I had @
http://virusscan.jotti.org/
* Vladi for the awesome lady bug icon @
http://www.rw-designer.com/user/vlasta
http://www.rw-designer.com/icon-detail/4513
* Ath for his work on the official JottiQ installer @
http://tonaday.blogspot.com/
* Raymond Chen for his awesome blog @
http://blogs.msdn.com/b/oldnewthing/
* Lukas von Hohnhorst who gave me permission to use his magnifying glass @
http://lukasiniho.deviantart.com/art/Magnifying-Glass-128330627
* DonationCoder.com as a whole @
https://www.donationcoder.com/
* Mark James for his excellent Silk Icon Set @
http://www.famfamfam.com/lab/icons/silk/
* Fat Cow Webhosting for their wonderful Farm-Fresh Web Icons @
http://www.fatcow.com/free-icons
* Smaller Animals Software for their CtxMenu example that saved me oodles of
time rather than having to spend time to figure out all details on my own @
http://www.smalleranimals.com/ctxmenu.htm
* stackoverflow.com for solving those issues I have before I have them @
http://stackoverflow.com/







CMIC_MASK_ASYNCOK (/i:a)
Wait for the DDE conversation to terminate before returning.
CMIC_MASK_NOASYNC (/i:w)
Windows Vista and later. The implementation of IContextMenu::InvokeCommand should be synchronous, not returning before it is complete. Since this is recommended, calling applications that specify this flag cannot guarantee that this request will be honored if they are not familiar with the implementation of the verb that they are invoking.-CMINVOKECOMMANDINFO Structure
CMIC_MASK_ASYNCOK (/i:a)
The implementation of IContextMenu::InvokeCommand can spin off a new thread or process to handle the call and does not need to block on completion of the function being invoked. For example, if the verb is "delete" the IContextMenu::InvokeCommand call may return before all of the items have been deleted. Since this is advisory, calling applications that specify this flag cannot guarantee that this request will be honored if they are not familiar with the implementation of the verb that they are invoking.
CMIC_MASK_NOASYNC (/i:w)
Windows Vista and later. The implementation of IContextMenu::InvokeCommand should be synchronous, not returning before it is complete. Since this is recommended, calling applications that specify this flag cannot guarantee that this request will be honored if they are not familiar with the implementation of the verb that they are invoking.-CMINVOKECOMMANDINFOEX Structure

For the quintessentially lazy, it'd be neat to have an option for XXX,YYY that positions the pop-up relative to the console window.-cranioscopical (November 16, 2010, 07:55 AM)
)

v0.8.3 (2010-11-16)
New functionality! The tip of an iceberg yet to crash into your boat...
Added: invocation now honours whether you press Ctrl and/or Shift.
Added: popup (/p) suboptions, of the format /p:...
@ Do not show off our trademark hat.
XXX,YYY Display at these screencoordinates (has to go last).
Example: cautomaton.exe /p:@-300,500 myfile.jpg
Added: invocation (/i) suboptions. The /i on its own is pretty much
useless as invocation is the default (which /n cancels). A list:
a _try_ to do invocation asynchronously.
w _try_ to wait till the invocation is done (=synchronous).
r if possible, try to count this as a 'recent document'
u allow windows ui to popup where needed. This is often used for
errors and thus disabled by default, but also needed for
the 'delete' verb to popup a window asking for confirmation.
z no zone checks (UAC: This file comes from the internet, ok?)
S/s Force the Shift key into a pressed (S) or unpressed (s) state.
C/c Force the Ctrl key into a pressed (S) or unpressed (s) state.
Fixed: modal dialogs running in the same thread work now. The 'delete'
verb uses this, but for example 'properties' does not, so the holy
grail of UI interaction has not been discovered yet.
Fixed: the debug (/d) shows a bit more now, and less at the same time.
Known issue: canceling 'delete' operation gives Cautomaton an unknown
error code, which it treats as a standard failure that can only be
recognised when running in debug (/d) mode. Can add a special exit
code meaning 'delete canceled' if requested. Opinions please?
Known issue: documentation still sucks.




I'd like to see a few more real world examples because I think it might be an interesting program for many (and me) if they could see in what situations it would be useful.-justice (November 15, 2010, 03:43 AM)

Do note that if you look in your start menu now, myfile.jpg has been pinned there.C:\Projects\dev\cautomaton\build\x64\Release>Cautomaton.exe /a /p myfile.jpg
Verb related information:
Verb (Unicode): startpin
Help text (Unicode): Adds this item to the Start Menu
Trail information:
Caption: Pin to Start Men&u
ID: #80
Position: 7
Neg. Position: -14
Recommended Cautomaton parameters: /v startpin
C:\Projects\dev\cautomaton\build\x64\Release>
So, at this point we know we can add (pin) something to the startmenu using /v startpin, and remove (unpin) it again later using /v startunpin Let's try it:C:\Projects\dev\cautomaton\build\x64\Release>Cautomaton.exe /a /p myfile.jpg
Verb related information:
Verb (Unicode): startunpin
Help text (Unicode): Removes this item from the Start Menu
Trail information:
Caption: Unpin from Start Men&u
ID: #81
Position: 7
Neg. Position: -14
Recommended Cautomaton parameters: /v startunpin
C:\Projects\dev\cautomaton\build\x64\Release>
What is that? Nothing? That's right. If the action is successful, you'll see nothing and nothing at all. Were you to check the exit code of the process, you'd find it to be 0, which means it was successful. And just to give another example... Repeat the exact same command however with the file already pinned, and...C:\Projects\dev\cautomaton\build\x64\Release>Cautomaton.exe /v startpin myfile.jpg
C:\Projects\dev\cautomaton\build\x64\Release>
There's a nice error message. If error messages aren't upto your liking, you can use /q to tell Cautomaton to be silent.C:\Projects\dev\cautomaton\build\x64\Release>Cautomaton.exe /v startpin myfile.jpg
Error: invocation of the action failed. Bad verb?
C:\Projects\dev\cautomaton\build\x64\Release>
v0.8.2 (2010-11-15)
Bugfix release. Oh my, the bugs.
Added: error messages when failing to compete.
Fixed: Windows XP ownerdraw-glitch fest, which also caused crashes.
Fixed: debug messages would print wrong data.
Fixed: Windows XP now gets _the_ hat. And Vista+ get a smaller hat.
Changed: added some new exit codes and restructured them.
Fixed: Pointless /v /n combination is pointless.



: better readme.txt file, including examples and a list of parameters and such
| Application Name | Cautomaton |
| Version | v1.0.1 |
| Short Description | Automating actions that are hidden away in the context menu of a file. |
| Supported OSes | Windows XP+, 32 and 64-bit |
| Web Page | Website |
| Download Link | (open directory of released versions) |
| System Requirements | |
| Version History |
|
| Author | worstje |
| Screencast |
|


Cautomaton
v1.0.1 (2015-01-21)
Cautomaton is a tool meant for the automation of actions that have ended up
being difficult to automate because the functionality in question is accessed
through the so-called context menu by right-clicking on a file.
Thus, Cautomaton allows for easy ways to scan particular files for viruses,
check the integrity of archives, set images as your wallpaper or whatever
other functionality is stashed away in the context menu.
It is not a tool for all occasions, however. If you can just as easily call
upon your anti-virus program directly, that may be more reliable. I consider
Cautomaton itself to be very dependable, but the ecosystem it is used in
determines its practical worth. Programs (ab)use the context menu in many
silly ways, and due to Cautomaton's invasive (automating) nature, those
programs may stumble even if you are not even attempting to interact with them!
That said, I consider such programs a challenge, as it means Cautomaton could
probably do an even better job than it already does. So if Cautomaton does not
seem to get the work done despite indicating that it should in fact work, feel
free to let me know and I'll do my best to find a solution for you.
-Jan Wester
http://whitehat.dcmembers.com/
INSTRUCTIONS
------------
Make sure to use the proper build for your system. While the 32-bit executable
works on a 64-bit machine, you likely do not have the proper context menu
extensions installed for the 32-bit (WOWSYS64) subsystem. End result is that
items will be missing where you might expect to see them.
(All 32-bit applications suffer this - try a 32-bit explorer some time.)
Cautomaton relies on the 'Microsoft Visual C++ 2010 Redistributable Package'.
You will need to install the version matching the build of Cautomaton you use.
To download the 32-bit (x86) version, visit: http://bit.ly/1yHFnLu
To download the 64-bit (x64) version, visit: http://bit.ly/159xous
HOW TO USE
----------
Getting started with Cautomaton is easy. There are two basic steps involved:
identification and invocation. In order to perform (invoke) an action on a file
for you, Cautomaton needs to be able to identify it.
To help with this, Cautomaton can analyze an action you perform. For example,
run the following in a commandprompt:
cautomaton.exe /p /a ReadMe.txt
This will tell Cautomaton to popup ('/P') a context menu, and analyze ('/A')
the choice afterwards. Choose one of the menu items. For example, open it.
The file 'ReadMe.txt' will now be opened in your program of preference.
(If you do not want this to happen, you can add an extra '/N' parameter to
have Cautomaton do nothing with the chosen item.)
At the end of the technical analysis Cautomaton performed is a recommendation
on how to use Cautomaton. Whatever it recommends is almost always the best way
to go about repeating your actions. For example, it will say:
Recommended Cautomaton parameters: /v open
The recommended parameters would instruct Cautomaton to use the 'open' verb on
the file(s) in question. Now, try out the recommendation to see if it works:
cautomaton.exe /v open ReadMe.txt
You should now see 'ReadMe.txt' be opened in your program of choice. At its
essence, that is all there is to using Cautomaton.
With these basics in mind, simply opening up a command-line and experimenting
with the different options should help you on your way. For a list of all the
things Cautomaton can do, try:
cautomaton.exe /?
There are a lot of options to fine-tune Cautomaton's behaviour, but most of
the time, you will not need them. But if you do... well, they exist!
One final word of caution regarding '/M': this option is very flexible, but is
also unreliable at its core. For example, menu text might be translated to
German for someone who uses the German language on their computer, so matching
against English text won't work. In a similar vein, the positioning of items
can vary depending on a multitude of factors, and the internal IDs are even
more fleeting. Please be aware of the assumptions you make when using '/M'!
KNOWN ISSUES
------------
1) Using '/A /P', and choosing an item in the 'Open With' menu will cause the
analysis to throw out an incorrect first crumb ('&Choose de' as opposed
to the correct 'Open wit&h'). Other action sources work fine.
2) Canceling a 'delete' verb operation gives Cautomaton an error code it
cannot recognise, which it then treats as a standard failure that can
only be recognised when running in debug (/d) mode.
3) On Windows versions that pre-date Windows Vista, a context menu that applies
to multiple files may be different than one Windows Explorer conjures up.
Items may be missing, doubled and/or mispositioned. For most invocations
(/P, /V or /M using text-matching) this should not be a problem, however.
REQUESTS FROM THE AUTHOR
------------------------
REQUEST TO TESTERS (#1): Please try out the multiple files support! If there
are differences between a context menu for the same files in one directory,
and a context menu for these same files being in separate directories, make
sure to let me know! If it is at all in my power to make these two cases
consistent with one another, I will do so!
REQUEST TO TESTERS (#2): Windows versions pre-Vista may have a weird / glitchy
context menu when applied to multiple files. I can't really test on such
systems anymore, but I am very interested in hearing about the state of
Cautomaton's new functionality on those systems. Let me know!
VERSION HISTORY
---------------
As Cautomaton's version history was getting rather lengthy, it has been put
into its own file. Please see 'Changelog.txt' for more information.
LICENSE
-------
Copyright (c) 2015 Jan Wester
This software is provided 'as-is', without any express or implied
warranty. In no event will the authors be held liable for any damages
arising from the use of this software.
Permission is granted to anyone to use this software for personal use, and to
redistribute it freely, subject to the following restrictions:
1. The origin of this software must not be misrepresented; you must not
claim that you wrote the original software.
2. All original parts must be intact and unmodified.
3. This notice may not be removed or altered from any source distribution.
If you wish to obtain a license for commercial use, please contact the author.
CREDITS
-------
Thanks to...
* JoTo for mentioning a certain very buggy shell extension @
irc://irc.freenode.net/donationcoder
* mouser for his request @
https://www.donationcoder.com/Forums/bb/index.php?topic=24266.0
* Raymond Chen for his awesome blog & series on context menus @
http://blogs.msdn.com/b/oldnewthing/
* Nikos Bozinis for encouraging my masochistic tendencies @
http://www.zabkat.com/blog/08Jul07.htm
* DonationCoder.com as a whole @
https://www.donationcoder.com/
* Rui Lopes for his sample project on per-pixel alpha-blending @
http://www.codeproject.com/KB/GDI/pxalphablend.aspx
* stackoverflow.com for solving those issues I have before I have them @
http://stackoverflow.com/
* the Oxygen Project for having nicely licensed icons @
https://techbase.kde.org/Projects/Oxygen

