Quickbooks – disable close button on application window
Quickbooks, while it is a very nice integrated accounting package, has long had a major usability flaw – it is very easy to accidentally close Quickbooks.
When its internal windows – reports, registers etc – are maximised the button to close the internal window sits directly inside the Close button on the application window…much like in Excel:
Closed the program by accident…again
Unfortunately it is very easy to click the main application Close button instead of the internal window one. The first time you do this the program asks you if you’re sure you want to exit. If you tick the “Do not ask me again” box when answering this question, there is no way to re-enable the dialog (re-installing isn’t an option due to the difficulty of getting licenses for older versions of Quickbooks from Intuit).
This is more of a problem on older versions of Windows where the application Close button was identical to the internal one, but even on XP and later we had a frequent issue with people in the office getting frustrated because they closed the application by accident. When you’re running on old hardware and you’ve got a company file open which has hundreds of thousands of transactions, generating reports can take upwards of 15 minutes. Losing all that because one has accidentally clicked the wrong button is frustrating.
Searching the various user forums found several people citing the same issue, but with no resolution. Digging through the XML in various settings files didn’t turn up the option either.
It appears that Intuit may be fixing this in Quickbooks 2009, but they still don’t explicitly say that you can re-enable the option.
Solved by a script
So I looked at a couple of different options, but the only one which I had the confidence to attempt was to disable the generic Windows application Close button. The only scripting language I have much experience of is AutoHotKey.
This script polls for the existence of Quickbooks application windows every 5 seconds, and if one exists, calls the appropriate dll and removes the Application Menu Close option and button from the window, if it hasn’t already been removed.
It has only been tested on Windows versions up to XP, and on Quickbooks versions up to 2006, but as long as the Quickbooks developers don’t decide to change the (bizarre) name of the Quickbooks app class – MauiFrame – it should continue to work for newer versions of the software.
Its not the most elegant solution, but it works, and the users in our office, particularly some of the less technologically inclined ones, were very grateful for it.
Get the .exe here (codeplex isn’t the most appropriate place to host it but I don’t have anywhere else just now) and place it in the Startup folder. The source code is here – open it in any text editor.
Super – free video encoder/converter/player
How I came to use Super to encode video for my Sony Ericsson W810i and my experiences with it. Feel free to skip down to the Program section.
Background (ye olde blogge)
The Christmas period was very heavy going.
On the one hand, its great to catch up with friends and family who you haven’t seen in ages and properly switch off and have some pure relaxation time, on the other hand I’m lucky enough to have been invited to a party practically every night of the two weeks I took off. This was bad news for my bank account and also for my fitness/health. I reckon that it is entirely possible to develop a physical dependence/conditioning on alcohol in just two weeks…I literally noticed my body perking up after the first pint of the day towards the end of the second week. Quite worrying.
Back at the start of October I sprained my ankle at a sailing event. I was paid crew for the week so I really had no choice but to finish out the last day of racing, and I have no doubt that jumping around on it did no good in terms of my recovery time. It was far and away the worst injury I’ve ever had – the hospital was astonished that they couldn’t find evidence of a break when I got an x-ray afterwards and my physio said it was the worst sprain she’d ever seen.
So I’d been forcibly kept out of the gym for 10 weeks or so, and then the two weeks of partying put paid to it for a further couple of weeks.
I had a program to work on from my physio, part of which was 20 minutes on the bike. I’ve always found the bike to be incredibly boring, more so than the treadmill for some reason, and I’ve struggled to spend 5 minutes warming up on it, let alone the 20 recommended by my physio.
Yesterday however I was hit by the realisation that the bike is perfect for watching videos on. Over the holidays I’d been tinkering with encoding video for my Sony Ericsson W810i mobile phone. I found out the settings for doing it manually using something like FlaskMPEG (which I use to back up my DVDs) but I wanted to see if I could find a program which had the appropriate presets.
After trying a few, the only (free) one which I could find was Super (Magic Video Converter looks really nice and seems to do the job well but it has a small license fee). Super is Windows only, and both encodes and plays video and claims to support more video types/codecs than VLC.
The Program
Functionality
The Sony Ericsson w810i supports mpeg-4 encoded video, and aac audio. It does however seem to require the .3gp container. After a bit of Googling I found Super (the download link is at the bottom of the page, and I could only download at about 3 kb/sec).
Super is by eRightSoft, whose website looks like it was designed in the early 90s. Having to drill through pages repetitively to get to the product page I linked to previously doesn’t inspire confidence, and frankly I wouldn’t trust this crowd to walk my dog, but having blocked its internet access and tested it in a VM I felt safe enough to give the program a go, and I was pleasantly surprised.
Super has a predefined format for encoding for Sony Ericsson phones – it actually has a very extensive list of presets which I haven’t tested including settings for a range of devices such as the iPod/iPhone, Zune, Nintendo-DS and various different mobile phones. I selected the .3gp container and made sure that the mpeg-4 video codec and acc audio codec were selected, and set the Video scale to 176:144 which is the resolution of my w810i. The only other settings I changed were to set the bitrate at 160 kbps (any higher and I found that the video got a bit choppy when playing back on the phone) and I bumped up the audio to 48kpbs.
Because the w810i doesn’t let you search/rewind through video, I split my videos using VirtualDub (awesome program…make sure you select Video –> Direct Stream Copy when doing this or it’ll reprocess the video) into smaller sections (I split a 22 minute South Park episode into 4 pieces…maybe a bit ott) before running them through Super. Update: The phone is perfectly able to search/rewind when the video is viewed through the media player. If the video is opened from the file manager, then the search/rewind functionality isn’t available. I am occasionaly quite dense.
Super lets you batch encode files, which is great. On my machine (stock e8400) it took between 20-30 seconds for each section…so fast that I really wasn’t paying a lot of attention. Naturally if you go for higher bitrates its going to take longer.
All that remained was to drop the videos onto the phone’s memory card, and now I’ve got entertainment for my bike sessions!
The GUI
Lets just say…there’s room for improvement.
Functionally, in terms of selecting the various encoding options, its actually quite nicely laid out. All of those options are on the one screen, and they’re logically grouped. The progression from top to bottom and left to right makes sense, and there’s a very informative tooltip which pops up when you hover over each control. As a replacement for a Help file…its very good for someone who has done some encoding previously, but most beginners would have to go looking for further information.
Annoyances
To specify the Output Location of the encoded file – which is a fairly important part of the whole procedure – you have to right-click anywhere(!) on the program window and choose Output File Saving Management, or press Ctrl+T. Not exactly intuitive. Also, the default saving location is within the program’s folder in Program Files…not quite as bad as installing a program in Docs & Settings, but inconsistent and annoying. There should be a location dialog on the main screen.
In fact, any options beyond those on the main screen have to be accessed by right-clicking (anywhere in the window!). There is no Program Menu at the top of the window. As an alternative paradigm to the Program Menu I can see what they were trying to do – it provides quick access to the program options, all in the one list – but it doesn’t work. Its too un-intuitive.
As a further (non-inhibiting) annoyance, the programmers don’t use the native Windows window controls. No, its not possible to maximise by double-clicking on the title bar…we’re stuck with the default window size.
Conclusion
Super is a very useful video encoder. I haven’t tested its playback functionality, but it encoded video for my Sony Ericsson w810i very well.
Its comprehensive selection of presets and easy tweaking of settings puts it ahead of pretty much all the other free video encoding software I tried (I must be one of the only people in the world who didn’t like Handbrake).
The GUI could use some work, particularly in its failure to conform to Windows conventions, and also with regard to the hiding away of the Output location, but I’ve seen worse and overall it does what I need comprehensively and quickly.
So…Windows Live Writer
After getting over my hulk rage during the download process when Microsoft forced me to update Messenger at the same time, and having used it a few times, I’ve finally had the chance to think about Live Writer objectively in comparison to in-browser editing.
Interface
Microsoft have kept things pretty simple – the user interface is uncluttered, and controls are mostly where you’d expect them in terms of formatting…its a bit like a dumbed-down version of Word.
The Tasks and post Properties panels are toggled with function keys, although screen real estate probably won’t be as important due to the limited dimensions of many blogs.
Editing can be done in Edit (Presentation/WYSIWYG) or Source format, so fine control over html elements is possible, and drafts can be saved locally or online.
Functionality
The Tasks panel is really the only place that Live Writer seems to me to have a big advantage over the web editor provided by mature blogging environments such as WordPress.
Inserting Images/Hyperlinks/Video takes one click to pull up the appropriate dialog…and having done so you get quite a deep level of control over the properties of that object (copy & paste doesn’t provide the same control over the object). Resizing an image is as easy as stretching the border or specifying an exact size in its properties.
If you frequently post non-text objects in your blogs then the speed advantages in performing all this work locally is quite significant, as well as being simpler in my opinion. When finished, Live Writer can be left to publish to the web in the background.
Categorisation/Tagging is all performed at the bottom of the screen, with intelligent lookup of previously used tags/categories, and even automatic creation of new ones if a searched-for term isn’t found:
There is a growing selection of plugins available here.
Benefits compared to in-browser editing
- Speed – doing all the formatting work locally gives considerable savings over online editing, especially for those of us with occasionally spotty internet connections
- Ease of non-text object editing – as mentioned above, this functionality is well advanced on WordPress’ in-browser editor
- Reliability – Ever press Publish in your browser and had a timeout/connection failure? Rarely an issue for those of us lucky enough to have broadband, but for people working off weak wireless/narrow pipes it’s still (very) occasionally an issue. Doing all your work locally means there’s nothing to lose.
Weak points compared to in-browser editing
All I can come up with is:
- Limited Preview – while the layout is perfect in Preview, Live Writer doesn’t reflect my custom theme in Preview and shows it in the default theme…maybe this will update automatically in time? Edit: As per Brandon’s comment below, View -> Refresh theme does indeed update the theme, and after refreshing the Preview view actually shows the current front page of the blog, including all posts, and inserts the blog-in-progress at the top. Very impressive!
- No support for audio objects – WordPress allows the insertion of audio objects (songs), which I’ve never done, but Live Writer doesn’t have this yet.
- You can’t install Windows Live Writer on Linux – Need to fire up VMWare or one of its ilk…
Annoyances
- Can’t customise the toolbar – granted, there’s not a lot to customise, but not being able to extract the font size control and save myself having to dig to it through the Font dialog is a mildly irritating – 1 whole click potentially saved
– and there’s a bunch of unused space on the toolbar. - Non-unified toggle between Edit (presentation) and Source views – F11 to get to Edit (which is the default) view, Shift+F11 to get to Source. Eh? There shouldn’t be a Shift required, it should be straightforward toggle. Likewise F12 should toggle in and out of Preview.
- Can’t customise panel layout – The tasks panel is on the right, which is probably natural in terms of mimicking real-world action placement for the majority of users, but what if I was left-handed? My control hand would be on the left, and I’d be used to reaching left.
- Occasional lag – Oddly, I get a bit of lag from time to time when editing. Generally it seems to be when I select a few words of text, but I haven’t definitively nailed it down. Live Writer is still in Beta, so hopefully this will be exterminated by the time it comes out of Beta. Edit: This is using build 14.0.8050.1202 – the lag is rare but persistent.
Conclusion
This is an excellent piece of (free) software. I don’t like the forced upgrade in its distribution channel, but I can’t see myself using anything else to write my blogs any time soon.
Edit: Having just Published this post from Live Writer, two of my images lost their centered format. This didn’t happen previously in my previous post.
Robocopy – bad GUI, brilliant functionality
Further to my post yesterday talking about the absence of any regard for user-friendliness in the design of the User Interface for Robocopy, I want to expand on and emphasise the brilliance of function in the utility itself.
As a simple backup (mirroring) solution I don’t think that Robocopy could be beaten for minimal use of resources and speed.
Run it to copy a directory with the switches /S and /XO and you’ve got incremental copying of a directory and all its (populated) subdirectories.
I use it as a home (where some web programming work is done) solution in case of disk failure.
One simple script to copy the appropriate directory, scheduled to run every evening, and I’m backed up. No errors or asking me whether I really want to copy a particular file, just simple, no fuss execution.