Some Useful Links I Don't Want to Forget
GAC Stuff Richard Grimes Fusion Workshop (yes, that Richard Grimes) Some sample managed GAC API wrappers from Junfeng Zhang Documnetation of the (un-managed) GAC APIs Other Dependency WalkerLogging COM Calls by modifying the registry (I’ve had to modify the registry more in the last week than I’ve had to do in the last year, not because of COM logging but because of Biztalk and VSIP) »
Mitch is Ascending...I'm Jealous
Mitch has been on Indigo Ascend training at North Ryde for the latter part of this week. That’s it Mitch….keep the great content coming. »
Frank Arrigo back (reposted)
I saw Frank Arrigo (godfather of australian developer weblogging) has recovered from his operation and back at work at 1 Epping Rd. He looked well. I’ve never actually met Frank before but I recognized him from this picture (below) of himself that he used to have on his weblog (drawn by one of his children I hope). »
Exciting new approach to versioning interfaces (courtesy of the Biztalk Team) (reposted)
Starting out with VSIP (reposted)
As I mentioned yesterday I was at a cross-roads regarding if/how I should continue with my little olde XPath syntax hilighter. After spending a while looking into visual studio add-ins as an option, I eventually took the plunge and downloaded and installed VSIP for VS 2005 beta 2 (along with the documentation refresh). This evening I’ve been perusing the documentation (which is quite good) for insights into what is possible with VSIP. »
H<SUP>a</SUP><SUB>c</SUB><SUP>k</SUP><SUB>e</SUB><SUP>r</SUP>'<SUB>s</SUB> Delight (reposted)
I read an interesting book some time ago that I meant to review but never got around to. The book is called Hacker‘s Delight, and its a compendium of little boolean tricks. The book is heavy going, with mathematical equations a-plently that briefly revived previously dormant parts of my brain from my engineering degree. Here is an excerpt from quite early on (p.18 - section 2-6) 2-6 Shift Right Signed from Unsigned If your machine does not have the shift right signed instruction, it may be computed using the formulas shown below. »
XPath Syntax Hilighting - Where Are We? (reposted)
Long-time readers of my weblog (HAHAHA) will probably remember the fun I was having some time ago writing an XPath syntax hilighting tool. So what happened to said tool that showed so much promise (more laughter)? Well, the story goes something like this:
Round-Tripping White Space In Hilighted Expressions
I hate developer tools that re-format your code on you, so I was determined to create an XPath expression tester that didn’t do this to others. I had to throw out my existing syntax hilighting code and re-write (using the XPath parser/scanner in the SSCLI ROTOR as a base).
Hey, Wouldn’t it be Cool if Instead of Showing the Xml Document as a Yucky Tree-View it was Syntax-Hilighted Text That You Could Edit
More proof that adding features is dangerous - this one has led me down another rabbit hole. I started from scratch using the RichText control in windows forms, and built up an in-memory object model of my rich text document as I parsed the Xml with a reader. I then turned the in-memory representation into a rich text string, which I then loaded into the rich text editor. Editing the rich text editor marked the rich text as “dirty“ and when the application idled it would do a re-parse/document generate RTF generate/display. While seeming good in theory and working for small to medium sized documents this approach sucked badly for large Xml documents. I guess when I think about it this is unsurprising, I was doing something like string (xml) -> parse (Xml Reader) -> Xml Dom + in-memory Rich Text “document“ -> RTF string -> parse (inside rich text box) -> in memory Rich Text “document“ (inside RichText editor) -> display. I made some performance tweaks here and there, but this approach was flawed. Also I found it hard to think about a way of doing this in a multi-threaded manner, because most of the work (roughly 90%) was happening on the main UI thread (inside the rich text editor).
Where to Now?
This leaves me with one question - where to now? I could release what I have and get on with my life, or take one of the three options:
1. Continue writing my own Xml editor, by progressively rendering the document using the Select/SelectionColor methods of the Rich Text box. Ignore the great work the visual studio team have done on the Xml editor in VS 2005, and soldier on. Maybe by the end of the year I can be where VS 2003 is now.
2. Write a visual studio add-in. Leverage the good xml editor in VS.NET 2003/great xml editor in VS 2005. The only thing I think I would need to do that I couldn’t find an example of is modifying the colour/boldness of a piece of text in the Xml document. Sadly this does not seem possible. I’d even settle for squiggly underlines like this add-in (using CodeRush’s DXCore, but still running inside Visual Studio) is able to do. Resharper is able to do lots of special syntax hilighting, but they’ve made so many changes to the text editor I’m not sure if it is even Visual Studio anymore. Is VSIP the way to go for this sort of thing?
3. Use somebody else’s syntax hilighter. This managed version of Scintilla looks capable of some nice things.
Update: I’ve signed up with VSIP and downloaded the SDK.
Comments
I’m pretty new to all this myself and still trying to find out what is possible.
In your post, you said your new version XPath Expression Tester using XPath parser/scanner in the SSCLI ROTOR as a base.
I’m very interested in how these classes usage.
Can you give me some example or somthing hint? please…
send me a mail : [email protected]
very thanks..
Blogspam continues
The onslaught of spam comments I’m receiving on my weblog continues. Tonight in my usual blogspam cleanup I accidentally deleted a number of actual posts and real comments. That really annoyed me. Appologies for the re-posted items, and the deleted comments.
Update: I’ve taken some action to (hopefully) reduce the amount of spam. What’s next? Bayesian filtering of every post?
Update 2: It looks like this is being felt by other weblogers too. Dominic has implemented his own CAPTCHA system recently. I’m just sick of wasting my energy on this. What do we need? A federated list of “no-posts-from-this-IP-address” list?
Update 3: I noticed some spam that SHOULD have been getting blocked by ReverseDOS was not, and have sent an update through to Mike, which he is including in ReverseDOS 1.2. It’s a great thing to be able to diagnose faults in software using the tools I use ever day, fix the fault and contribute the fix back to the “pool”. Maybe those open-source zealots are on to something after all.
Comments
Biztalk Pipeline Components
I spent some time last week writing a disassembler pipeline component for Biztalk. We evaluated the other ways of getting a “message” in and this seemed like the best way. I found the documentation for writing pipeline components a little thin on the ground, but there are some great resources on the web so here goes. This post from Gilles weblog was probably the best, giving an in-depth example of the important Disassemble() and GetNext() methods for the Disassembler to implement. »
Is it really impossible to highlight VS 2003
C# code fragment?
I have this problem, but i’m a beginner in add-in writing.