March 2006 Blog Posts

If you do anything "out of the ordinary" in your UserControl or Form derived classes in Visual Studio 2005, let me introduce you to a little snippet that will probably save you lots of headaches:

if ( DesignMode ) return;

or, its equally useful counterpart

if(!DesignMode){
	doStuff();
}

Now, the "out of the ordinary" thing I was doing was...hooking up an instance EventHandler using a static property that exposes a Form derived class in an OnLoad override. What? I know, not the clearest situation, and probably one that could use a boatload of refactoring, but it works. In short, if you are having designer problems in Visual Studio 2005, it may be worth it to sit back for a bit and think about what introduced the designer error. Prime candidates are constructors and OnLoad overrides that use static methods for functionality. This code didn't allow me to view the designer of a different form:

public override void OnLoad(EventArgs e){
	AppManager.ConcreteEditorForm.NewPostCreated += new EventHandler(HandleNewPost);
}

while this one would:

public override void OnLoad(EventArgs e){
	if( DesignMode ) return;
	AppManager...
}

I've updated the NetVibe source with a mildly useful update: listening for changes in SSID as well as IP Addresses. The source is hosted at http://chrisfrazier.net:8080/NetVibe on a subversion server.

I used some code that I found at the FurryGoat experience, modified it a little bit, and it seems that it's at least useful in detecting if an SSID ends with something...for example, my WiFi at work has an SSID of VelocityDatabank, so I created a rule to look for an SSID/IP Address that EndsWith Databank. This code definitely needs improvement, but I have found it very useful, and now I don't have to have different network segments specified at each of the different WiFi spots I connect to.

This looks interesting. I thought Mr. "Just finished my last chapter of Beginning AJAX" would have for sure created this as an asp.net control...guess I should have read closer the first time ;) Could be useful in PostXING, ifn we ever put some real security innit.

Since there has been so much interest in the SecurePasswordTextBox control (see my previous post http://weblogs.asp.net/pglavich/archive/2006/02/26/439077.aspx and http://weblogs.asp.net/pglavich/archive/2006/03/12/440052.aspx ), I thought I would take the time to iron out the bugs. When I first released it, I performed minimal testing (i.e. about 15 minutes worth) and just thought if anybody else is interested, then I might put some real effort in.

Well since then it was featured in an MSDN webcast by Dan Sellers of Microsoft and I have received almost 300 downloads in a short span of time. So just as a quick courtesy note, it has now been updated to V1.1 and works (AFAIK) 100%. Previous versions didn't handle certain situations property where text in the middle was selected and you typed a character, it would simply append the char and not do a replacement (thanks Nick :-) )

All is now well. Go grab it from herehttp://www.theglavs.com/DownloadItem.aspx?FileID=46

For those unaware, its a Windows Forms TextBox control that uses the .Net V2 SecureString class to store its contents. Basically, you now have a UI control that allows directly entry into this secure string class and makes it useable from a windows UI perspective. (See my previous post for a full explanation.)

[Via Glavs Blog]

Sorry I keep putting out these tests, but I'm trying to see what different regexes will do to a friendly url in subtext. Nothing more to see here.

[ Currently Playing : Have You Heard? - ZZ Top - Tres Hombres (3:12) ]

I've got weak regex skillz. I'll admit it.

I don't use them very much, so when I do need to, it's nice to know that regexlib is sitting there, waiting for me to come to it with my regex needs. In particular, there is an online Regular Expression Tester that has helped me to look smarter than I actually am on more than one occasion. Sure, I could use a desktop tool for my regex needs (and sometimes I do), but regexlib has the added bonus of having a collection of user-contributed regular expressions that are super useful when looking for ideas on how to implement a certain regex.

And let's not forget the Cheat Sheet ... regexlib is just chock full of regex goodness.

[ Currently Playing : The First Drop - Rise Against - (2:39) ]

I can't believe nobody called me on this: BackgroundWorker.IsBusy Property

Reflector says it does exactly what I was looking for in a previous post.

Technorati Tags:     

I had tried to reply to this post on WinExtra, but it errored out on me. So, here's what the comment said:

Blogger uses Atom feeds located at http://blogdomain/atom.xml The fact that the skins provided don't reflect this is the pain point...you'd see a link if you view sourced it:

<link rel="alternate" type="application/atom+xml" title="Blue Phoenix" href="atom.xml" />

Also, get rid of that captcha (I hate those!) use ReverseDoS instead: http://angrypets.com/tools/rdos

Blogging is cool and rss feeds make it even better for the reader/user; but only if blog hosts provide a mechanism for the blogger to have an RSS feed on their site which most do.

The only exception I have found so far is blogs hosted by Blogger.com. Now I don't know if it is a setting that individual bloggers need to set but not one of the blogs on Blogger.com that I like seem to have an RSS feed.

What is up with that silliness?

Now playing: New Phunk Theory - La Neblina Del Verano



This weblog is sponsored by WinExtra.
[Via The World of WinExtra]

For the adventurous among you, we've decided to release beta 1 of PostXING available for download at ProjectDistributor!

There are a few known issues, but as far as I know there aren't any showstopper bugs. I've been running the development build for quite some time now, and for PostXING v1.1 users, I think this release is a big step up in terms of usability. Since the only working provider at this time is the MetaBlogProvider, the functionality remains basically the same, i.e. you can manage a MetaWeblog enabled weblog using PostXING from your desktop.

If you find any issues, bugs, or you just think something could be done better, head on over to the Gemini issue tracker. To add an issue, click the All Issues link and then Create Issue at the top of the page. If you don't want to get that involved, you can always use the contact form over at PostXING.net to at least get your issue addressed...or you could just let it ride and hope I run into it myself :)

If you're feeling really adventurous and want to hack on PostXING, you can do so by using TortoiseSVN and pointing to http://postxing.net:8080/PostXING. All main development is done on the trunk by version. If you don't like how something works, send me a diff. I think I've been pretty receptive to criticism and feature requests (even tho we can't put them all in at once), so the very least that will happen is that you will be able to use a program that you feel works better. Thanks, and enjoy!

[ Currently Playing : Jesus Just Left Chicago - ZZ Top - Tres Hombres (3:31) ]

testing source

update: nope.

update2: almost: I get a reference to the source, but it's based with the skin's control directory.

update3: BAM! gotta put http:// at the beginning. sweet, I missed that one.

[ Currently Playing : Sheik - ZZ Top - Tres Hombres (4:04) ]

This is the end result after setting up SubText and importing my old blog (now moved to here). I had created a blogML exporter for cs11 and ran into some initial problems because the version of BlogML I had used was a smidge older (v0.9) and therefore had a different schema. Kinda makes me wish there were a way to clear out all the content and start over like subv2 allows me to.

So why didn't I go with subv2? (Sorry, Darren) The admin interface and WebParts' silly requirement of IE. I basically live in FireFox and although it's been quite some time since I've posted thru the web interface of .text/CS::Blogs, I do need to go in from time to time and make some changes. Plus, since subtext was forked off of .text, I'm already pretty familiar with the interface (and some of the code when necessary). Subv2 is a real nice exploration of all the fun new doohickeys in .net 2.0, and with Darren at the helm you know it's high-quality stuff, but I need something that works for me in the environment I choose to work with. Either way, I've got an install of Subv2 behind the firewall so I could just make that one public and import my shiny new blogML file if need be: I'm keeping a definite eye on it, that's for sure.

[ Currently Playing : Move Me on Down the Line - ZZ Top - Tres Hombres (2:30) ]

Well, it turns out that PostXING's mystery plugin author is none other than Taras Naumtsev, and Taras is on fire! Check out the new MetaPinger plugin:

MetaPinger is a PostXING plugin that notifies a number of services that keep track of
weblogs and publish them. By pinging, you let the services know that your blog has been updated ,
they crawl your blog, publishing your site contents, thus increasing your blog's popularity.

MetaPinger


Setup
Extract the ZIP archive into the "plugins" subdirectory of PostXING's install directory

Configuration
You will need to configure MetaPinger plugin to notify ping services.
Enter blog name.
Enter blog url.
Add ping service urls ( one per line )

MetaPinger - Configuration

Usage
To ping press the "Ping" button.

Download MetaPinger plugin

 

MetaPinger has been tested with the following ping services:
http://1470.net/api/ping
http://api.feedster.com/ping
http://api.moreover.com/RPC2
http://api.moreover.com/ping
http://api.my.yahoo.com/RPC2
http://blogdb.jp/xmlrpc
http://blog.goo.ne.jp/XMLRPC
http://coreblog.org/ping/
http://ping.blo.gs/
http://ping.bloggers.jp/rpc/
http://ping.blogmura.jp/rpc/
http://ping.cocolog-nifty.com/xmlrpc
http://ping.syndic8.com/xmlrpc.php
http://rpc.blogbuzzmachine.com/RPC2
http://rpc.blogrolling.com/pinger/
http://rpc.technorati.com/rpc/ping
http://www.weblogues.com/RPC/

 

Technorati Tags:  PostXING  Tagging  Utility  Software  Blogware  Plugin 

[Via .Net Adventures ]

 

[ Currently Playing : Beef (Feat. Mobb Deep) - The Notorious B.I.G - (4:57) ]

Holy Schnikeys!

Someone has actually built a plugin for PostXING! Ladies and gentlemen, Allow me to introduce the TechnoratiTagger plugin for PostXING! Unfortunately, I'm not 100% sure who wrote it (well, it's not obvious from the site). The good news is...it works! :) It even works with the spankin new, begging to be released v2 beta I have on my machine, and it works well!

Technorati Tags:       

 
 
 
blog comments powered by Disqus