2009 Apr 1, 12:32Spped Rabbit Pizza's "IE8 Explorer" pizza: 8 slices, 8 ingredients, 8 Euros.
humor pizza ie8 ie france 2009 Mar 23, 12:58Details on a particular browser exploit and how its been resolved in IE8. "One approach they presented allowed attackers to use .NET framework DLL's to allocate executable pages of memory at
predictable locations within the iexplore.exe process. They were then able to demonstrate how .NET behavior could be combined with a separate exploitable memory corruption vulnerability to run
arbitrary code."
security ie8 ie browser hack via:ericlaw 2009 Mar 23, 8:13
I've made another extension for IE8,
Outline View, which gives you a side bar in IE that displays an outline of the current page and lets you make intrapage bookmarks.
The outline is generated based on the heading tags in the document (e.g. h1, h2, etc), kind of like what W3C's Semantic data extractor
tool displays for an outline. So if the page doesn't use heading tags the way the HTML spec intended or just sticks img tags in them, then the outline doesn't look so hot. On a page that does
use headings as intended though it looks really good. For instance a section from the HTML 4 spec shows up quite nicely and I find its
actually useful to be able to jump around to the different sections. Actually, I've been surprised going to various blogs how well the outline view is actually working -- I thought a lot more
webdevs would be abusing their heading tags.
I've also added intrapage bookmarks. When you make a text selection and clear it, that selected text is added as a temporary intrapage bookmark which shows up in the correct place in the outline.
You can navigate to the bookmark or right click to make it permanent. Right now I'm storing the permanent intrapage bookmarks in IE8's new per-domain DOM storage because I wanted to avoid writing
code to synchronize a cross process store of bookmarks, it allowed me to play with the DOM storage a bit, and the bookmarks will get cleared appropriately when the user clears their history via the
control panel.
technical intrapage bookmark boring html ie8 ie extension 2009 Mar 20, 5:03"This package contains header files and libraries to help you develop Windows applications that use Windows Internet Explorer."
ie8 ie msdn microsoft development C++ com visual-studio windows 2009 Mar 20, 10:10Its IE8 advertising that doesn't make me cringe. On the contrary it has Ask a Ninja, Janeane Garofalo, and several comedians I recall collectively from either 'I Love the [decade]' or 'Best Week
Ever'.
humor video ie8 advertising via:louis 2009 Mar 20, 6:18
IE8, the software I've been working on for some time now, has finally been released at MIX09.
As I mentioned previously, I worked on
accelerators (previously named
Activities) in IE8. Looking at the
kinds of things I blog about on the IE Blog, you might also
correctly guess that I work on the networking stack. Ask me about what else I worked on during IE8 development. The past few months were very busy for me and I'm happy this is finally out.
technical internet explorer ie8 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:
- 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.
- 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.
- 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.
- 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.
technical boring internet explorer com c++ ihtmlelement extension 2009 Mar 12, 2:17
I've made an extension for Internet Explorer 8, FormToAccelerator which turns HTML forms on a web page into either an accelerator or a search
provider. In the design of the accelerators format we intentionally had HTML forms in mind so that it would be easy to create accelerators for existing web services. Consequently, creating an
accelerator from an HTML form is a natural concept and an extension I've been meaning to finish for many months now.
This is similar in concept to the Opera feature that lets you add a form as a search provider. The user experience is very rough and requires some knowledge of accelerator variables. If I can come
up with a better interaction model I may update this in the future, but at the moment all the designs I can come up with require way too much effort. Install IE8 RC1 and then try out FormToAccelerator.
activity html accelerator ie8 internet-explorer activities formtoaccelerator extension 2008 Dec 30, 1:40Packagetrackr is like the isnoop tool but with IE8 integration. Its universal tracking across UPS, USPS, FedEx, etc., shows progress on a map, has RSS feed you can subscribe to telling you about the
package's progress, and also added support for IE8's accelerator and webclips. Snazzy. Still want georss markup in the feed though.
geo google map ups visualization mashup rss package shipping feed tool fedex usps tracker track accelerator webclip 2008 Sep 29, 1:39Demos some of the working HTML5 features now available in recent builds of FireFox, IE8, Safari, and Opera. "Speaker: Ian Hickson. As the HTML5 effort reaches its first big milestone -- feature
completeness -- browsers are starting to implement it. It will be years before you can rely on HTML5 support when writing Web pages and applications, but you can start to experiment today to get a
feel of what the new standard offers. This talk will explore some of the most recent implementations of HTML5 features."
html5 ian-hickson html google video browser ie8 2008 Sep 3, 12:44This is the public site for logging and tracking IE8 Beta bugs. Read access is available to all. Write access requires acceptance into the Technical Beta program. Check the blog for info on joining
that.
ie blog ie8 bug development microsoft 2008 Aug 29, 10:31Differences between Microsoft's JScript and the ES3 standard with example output from all major browsers on each point.
microsoft development jscript javascript standard reference programming browser ie8 es3 compatibility 2008 Aug 28, 10:57Apparently we've got some videos showing off IE8 features. Some are the kind you would expect: informative with music. Others are trying to be funny. Those aren't nearly as lame as I would have
expected.
video microsoft ie ie8 2008 Aug 27, 11:36
Internet Explorer 8 Beta 2 is now available! Some of the new features from this release that I really enjoy are Tab Grouping, the new address-bar, and InPrivate Subscriptions.
Tab Grouping groups tabs that are opened from the same page. For example, on a Google search results page if you open the first two links the two new tabs will be grouped with the Google search
results page. If you close one of the tabs in that group focus goes to another tab in that group. Its small, but I really enjoy this feature and without knowing exactly what I wanted while using
IE7 and FF2 I knew I wanted something like this. Plus the colors for the tab groups are pretty!
The new address bar and search box makes life much easier by searching through my browsing history for whatever I'm typing in. Other things are searched besides history but since I ignore favorites
and use Delicious I mostly care about history. At any rate its one of the things that makes it impossible for me to go machines running IE7.
InPrivate Subscriptions allows you to subscribe to a feed of URLs from which IE should not download content. This is intended for avoiding sites that track you across websites and could sell or
share your personal information, but this feature could be used for anything where the goal is to avoid a set of URLs. For example, phishing, malware sites, ad blocking, etc. etc. I think there's
some interesting uses for this feature that we have yet to see.
Anyway, we're another release closer to the final IE8 and I can relax a little more.
microsoft browser technical ie8 ie 2008 Aug 27, 12:22IE8 Beta2 is now available. This blog post mentions some of the features I like best in this release, like the updated address bar, visual search suggestions, and tab grouping.
microsoft ie browser ie8 beta blog article 2008 Jun 25, 1:58The official IE team flickr pool.
ie photo flickr ie8 blog chris-wilson 2008 May 18, 6:45
While re-reading Cryptonomicon I thought
about what kind of information I'm leaking by posting links on Delicious. At work I don't post any Intranet websites for fear of revealing anything but I wondered if not posting would reveal
anything. For instance, if I'm particularly busy at work might I post less indicating something about the state of the things I work on? I got an archive of my Delicious posts via the Delicious API
and then ran it through a tool I made to create a couple of tables which I've graphed on Many Eyes
I've graphed my posts per week and with red lines I've marked IE7 and IE8 releases as stated by Wikipedia. As you can see, there doesn't seem to be much of a pattern so I suppose my concerns
we're unfounded. I use it for both work and non-work purposes and my use of Delicious isn't that consistent so I don't think it would be easy to find a pattern like I was thinking about. Perhaps if
many people from my project used Delicious and that data could be compared together it might be easier.
For fun I looked at my
posts per day of week which starts off strong on Mondays and decreases as the
week goes on, and my
posts per hour of day. It looks like I mostly post around lunch and on the extremes I've
only posted very late at night twice at 4am:
converting media for the Zune, and
Penn's archive of articles. In the morning at 7am I've posted only once:
document
introducing SGML.
manyeyes graph cryptonomicon delicious 2008 Apr 23, 2:42Web apps intended for the iPhone could easily be made into activities for IE8.
apple directory activity iphone software web tool tools 2008 Apr 8, 5:41Biology site makes activity to resolve their URNs: "In this case we decided to see how we could easily highlight a LSID and quickly get related information from its Authority."
activity ie8 urn uri blog article biology via:benny 2008 Apr 3, 9:00
With the new features of IE8 there's several easy ways to integrate Gmail, Google's web mail service, for mail composition, searching, and monitoring that I enjoy using.
-
Composition
-
I made a Send via Gmail activity that allows you to select some text, a document, or link and via the activity menu open a new tab to compose a new message with the selection. Go to my activity page and click "Send via Gmail" (source) to install it. I found info on the gmail composition URL in the comments of this gmail howto article and used that in the
activity. I talked about activities previously.
-
Search
-
I've made a search provider that searches your gmail account. See my search provider page and select 'Gmail' (source) to install the Gmail search provider. Search providers aren't new to IE8 but this fits in with Gmail integration in IE. Again in the
comments of another howto I found information on a Gmail search URL.
-
Monitor
-
New to IE8 is authenticated feed support and favorites bar monitoring which combined with the Gmail inbox feed
means you can see when you get new mail in your favorites bar in IE. To do this, navigate to the feed https://mail.google.com/mail/feed/atom,
click 'Subscribe to this feed', then click on the Add button in the upper left (the star with plus icon) and select 'Monitor on Favorites Bar' to add this as a monitored item in the favorites
bar. Next, right click on the new item in your favorites bar, open the properties dialog, and enter your Gmail username and password into the new username and password fields. Now when you get
new mail the Gmail feed item will shine and bold and you'll be able to get to new messages in the dropdown. I described monitored feed items previously.
activity gmail search howto google ie feed rss opensearch