tips - Dave's Blog

My timeline on Mastodon

laughingsquid: Windows 95 Tips, Tricks, and Tweaks Some very...

2012 Nov 14, 5:39


Windows 95 Tips, Tricks, and Tweaks

Some very H. P. Lovecraft style redesigns of some classic Win95 UI.

PermalinkCommentshorror humor windows windows-95

International - Max Fisher - Welcome to America, Please Be On Time: What Guide Books Tell Foreign Visitors to the U.S. - The Atlantic

2012 Jun 7, 9:15

Such tips as: “don’t hand out cash to dinner guests” reveal what foreign tourists findsurprising about coming to America.

PermalinkCommentshumor travel us

Chapter 16. The Registry - Master-PowerShell | With Dr. Tobias Weltner - – Powershell Scripts, Tips and Resources

2011 Jan 4, 7:25How to take ownership and re-ACL registry keys from a powershell prompt.PermalinkCommentstechnical powershell acl regkey registry windows

The Old New Thing : Advantages of knowing your x86 machine code

2010 Feb 19, 2:27Raymond's tips for modifying x86 assembly code while debugging.PermalinkCommentstutorial debug debugging technical assembly x86 windows raymond-chen tips

Extreme JavaScript Performance

2009 Nov 12, 3:35Presentation comparing the performance of different JavaScript operations on different web browsers. Suggestions cover full range of good to know to common sense to ugly ugly ugly.PermalinkCommentsvia:thefangmonster performance javascript browser web technical tips presentation

Creating Accelerators for Other People's Web Services

2009 Aug 18, 4:19

Before we shipped IE8 there were no Accelerators, so we had some fun making our own for our favorite web services. I've got a small set of tips for creating Accelerators for other people's web services. I was planning on writing this up as an IE blog post, but Jon wrote a post covering a similar area so rather than write a full and coherent blog post I'll just list a few points:

PermalinkCommentstechnical accelerator ie8 ie

Vincent Liu: Tab Completion for Vim (Updated)

2009 May 27, 3:39A fancy tab completion script for Vim that does neat things for Java. Links to other Java+Vim tips as wel.PermalinkCommentsvim java script reference

Monastic - An ascetic view of XML best practices

2009 Apr 12, 6:36" is a look at XML from a different angle, focusing on what markup is best at rather than what markup can do to solve a particular problem or set of problems. While XML is powerful, developers seem insistent on using XML in ways which seem convenient for a moment but which cause much greater trouble down the line to both their projects and to markup itself."PermalinkCommentsxml howto tips

Command-line Fu - The best UNIX commands on the web

2009 Mar 23, 9:35Ohhh some nice ones in here. "Command-Line-Fu is the place to record those command-line gems that you return to again and again."PermalinkCommentsshell unix linux cli howto tips via:swannman

Notes on Creating Internet Explorer Extensions in C++ and COM

2009 Mar 20, 4:51

Working on Internet Explorer extensions in C++ & COM, I had to relearn or rediscover how to do several totally basic and important things. To save myself and possibly others trouble in the future, here's some pertinent links and tips.

First you must choose your IE extensibility point. Here's a very short list of the few I've used:

Once you've created your COM object that implements IObjectWithSite and whatever other interfaces your extensibility point requires as described in the above links you'll see your SetSite method get called by IE. You might want to know how to get the top level browser object from the IUnknown site object passed in via that method.

After that you may also want to listen for some events from the browser. To do this you'll need to:

  1. Implement the dispinterface that has the event you want. For instance DWebBrowserEvents2, or HTMLDocumentEvents, or HTMLWindowEvents2. You'll have to search around in that area of the documentation to find the event you're looking for.
  2. Register for events using AtlAdvise. The object you need to subscribe to depends on the events you want. For example, DWebBrowserEvents2 come from the webbrowser object, HTMLDocumentEvents come from the document object assuming its an HTML document (I obtained via get_Document method on the webbrowser), and HTMLWindowEvents2 come from the window object (which oddly I obtained via calling the get_script method on the document object). Note that depending on when your SetSite method is called the document may not exist yet. For my extension I signed up for browser events immediately and then listened for events like NavigateComplete before signing up for document and window events.
  3. Implement IDispatch. The Invoke method will get called with event notifications from the dispinterfaces you sign up for in AtlAdvise. Implementing Invoke manually is a slight pain as all the parameters come in as VARIANTs and are in reverse order. There's some ATL macros that may make this easier but I didn't bother.
  4. Call AtlUnadvise at some point -- at the latest when SetSite is called again and your site object changes.

If you want to check if an IHTMLElement is not visible on screen due how the page is scrolled, try comparing the Body or Document Element's client height and width, which appears to be the dimensions of the visible document area, to the element's bounding client rect which appears to be its position relative to the upper left corner of the visible document area. I've found this to be working for me so far, but I'm not positive that frames, iframes, zooming, editable document areas, etc won't mess this up.

Be sure to use pointers you get from the IWebBrowser/IHTMLDocument/etc. only on the thread on which you obtained the pointer or correctly marshal the pointers to other threads to avoid weird crashes and hangs.

Obtaining the HTML document of a subframe is slightly more complicated then you might hope. On the other hand this might be resolved by the new to IE8 method IHTMLFrameElement3::get_contentDocument

Check out Eric's IE blog post on IE extensibility which has some great links on this topic as well.

PermalinkCommentstechnical boring internet explorer com c++ ihtmlelement extension

7 Wii tricks Nintendo doesn't tell you | News | TechRadar UK

2008 Oct 25, 10:22My Xbox has a blog and my Wii has an email address: "Email a chum's Wii: You'll need to have a record of those damnably unmemorable friend codes for anyone you want to mail, but once you do it's simple: just drop a message to w[friendcode] For instance,"PermalinkCommentswii howto email nintendo tips via:sarah

Mail a brick to junk mailers using paid postage - Creative tips with dealing with spammers and bulk mailers

2008 Apr 7, 1:50Attach spam's pre-paid postage to objects and mail them back. FTA: "Dear Bulk Mailer, Please find attached to your no-postage-necessary envelope, this brick."PermalinkCommentshumor box junk mail prank spam howto

Test results: Bidi in window title and tooltip

2008 Feb 22, 9:50FTA: "This page summarises results for a set of tests aimed at discovering whether bidirectional text is displayed as expected in the window title bar and tooltips." Punchline: generally, no they're not.PermalinkCommentsbidi internationalization w3c browser web ie6 firefox opera

How YOU Can Make the Web More Structured - ReadWriteWeb

2008 Feb 8, 3:27Tips on adding structured content to your webpages including microformats (ugh).PermalinkCommentssemantic semantic-web web html tips howto microformats

The Nerd Handbook

2007 Nov 12, 1:48A guide to the why of various nerdy behavior. I find some of this applicable to me.PermalinkCommentsnerd humor article tips social howto via:swannman - Comment about 'Turn Off the PC-Speaker' (Windows XP Discussion Forum)

2007 Nov 12, 1:15How to turn off the PC speaker in Windows.PermalinkCommentsaudio tips howto pc-speaker sound windows beep setupnewcomputer

Terminal Services Team Blog : Multi Monitor support in the Vista TS Client.

2007 Sep 28, 11:24How to get mstsc to span multiple monitors -- sort of. Actually this kind of sucks. It just makes my TS session the size of a rectangle that would include all of my client side monitors.PermalinkCommentsdesktop remote mstsc tools tool tips windows microsoft blog article howto vista

The Old New Thing : Windows Server 2003 can take you back in time

2007 Sep 28, 11:13Using Win2K3's timewarp featurePermalinkCommentsbackup windows timewarp microsoft blog raymond-chen tips howto

17 powerful bookmarklets for your iPhone at LifeClever ;-) Tips for Design and Life

2007 Sep 10, 4:29Bookmarklet suggestions for the iPhone.PermalinkCommentsapple iphone bookmarklets browser hack script javascript

Trendsspotting Blog Archive - kids are heavy social network users, they don’t say no to relevant marketing efforts: online surveys and tips for marketersTrendsspotting

2007 Jul 11, 9:54Stats on who uses social networks.PermalinkCommentsresearch reference statistics social web
Older Entries Creative Commons License Some rights reserved.