Feed Icon  


  • Bryant Likes
  • Send mail to the author(s) E-mail
  • twitter
  • View Bryant Likes's profile on LinkedIn
  • del.icio.us
Get Microsoft Silverlight
by clicking "Install Microsoft Silverlight" you accept the
Silverlight license agreement

Hosting By

Hot Topics


Open Source Projects




Posted in General at Thursday, October 21, 2004 7:33 AM Pacific Daylight Time

I'll be out of town for the next ten days. My wife and I are flying to Boston to visit my brother-in-law who is in residency at Boston University's School of Medicine. I'm also going to try to visit my brother who is at Yale Law School while I'm there. It should be a fun trip and I hope to see some great fall colors (maybe I'll post some photos when I get back).

I'm John Kerry

Posted in General at Thursday, October 21, 2004 4:48 AM Pacific Daylight Time

RsWebParts 1.1 BETA

Posted in Reporting Services | SharePoint at Wednesday, October 20, 2004 11:13 AM Pacific Daylight Time

If you're interested in the RsWebParts I just uploaded the installer for the beta of the next version.

RsWebPart Workspace

See the news for the list of fixes and enhancements. This is a beta and so what I'm really looking for is feedback, suggestions, and most of all: bug reports. I'm sure there are going to be some since I put this together pretty quickly.

Update: Post any feedback you have here (or just reply to this post).

Cool IE Tools

Posted in SharePoint | ASP.Net/Web Services at Tuesday, October 19, 2004 8:42 AM Pacific Daylight Time

If you do web development you may find these tools invaluable:

Toggle Borders

The accepted way to debug complex table-based HTML pages is to add a border="1" attribute to the <TABLE> element. Toggle Borders is a utility which automates this and more. It is accessed from the context menu in Internet Explorer and will color-code tables, spans and divs for you to see how your website, or a third party website has been layed out. Select Toggle Borders again and the color-coding is removed.

Full Source

Full Source is an Internet Explorer menu extension which displays the source Internet Explorer is displaying, directly from the Internet Explorer object model. This is useful wherever javascript is dynamically writing HTML into the DOM, or where XSLT has been used to generate HTML.

I use both of these tools, and while they aren't something you use every day, when you need them they come in very handy.

No Touch Analysis Front-End

Posted in Sql and Xml | SharePoint | General at Tuesday, October 19, 2004 4:13 AM Pacific Daylight Time

[via Duncan Lamb]

Finally after 2 ½ years – I can talk about the work we’ve been doing in .NET. I work for Databeacon and we produce "Web Reporting and Data Analysis" software. Last week we launched what we believe to be the world's first commercial No Touch Deployment application with .NET.

More here.

Duncan asks the first question that came to my mind: Does it support Analysis Services? I would hope it does since the product would only be useful if I can connect it to the work we've already done (and plan to do with SQL 2005). I'm hoping this might be zero-footprint analysis client that we could use to replace Office Web Components, which leads to my second question:

Is the product extensible enough that I can somehow create SharePoint web parts with it?

I'm still looking for the perfect cube browser web part...


Hacking SharePoint

Posted in SharePoint at Monday, October 18, 2004 11:00 AM Pacific Daylight Time

As I mentioned in my last post I'm upgrading some web parts. More notably, I'm moving from an unsigned assembly to a signed assembly. This presented me with an interesting problem.

If you upgrade a web part assembly, and the assembly is signed, you can force all the existing web parts that use that assembly to use the new version via the runtime element of the web.config file. You simply change the version number of your assembly, add it to SharePoint, and all your web parts get upgraded to the new version. Easy.

Okay, so what if your assembly was not signed and now it is? Good question. As far as I can tell the answer is that you are SOL. I tried every combination that I could think of and couldn't get it to work. Of course, since I'm an idiot so this doesn't mean much (as you can see this also isn't my first SharePoint hack :).

So what's a SharePoint hack to do? Hack, of course. First I put a couple of the old webparts onto a page, then ran a SQL trace and opened the page. From that trace I was able to figure out that there is a table called webparts (how original) that contained all the webparts for the page and what database this was in. I was also able to figure out the tp_webparttypeid for each of my old web parts. Next I added the new webparts to the page and went through the same process to get the tp_webparttypeid for each of my new webparts.


Once I had the old and the new tp_webparttypeid I simple ran an update on the webparts table. I updated all the tp_webparttypeid to the new tp_webparttypeid where the webpart had the old id (that matched part for part in the assemblies). I really didn't expect it to work so I was very surprised when it did. It worked perfectly.


Okay so I've told you not to do this so don't blame if you try it and you break something. So far I've only tried it on my test machine which doesn't mean much. Tomorrow I'm planning on backing up our production database and then seeing if I can make this work on the production site. It will save us tons of time because as far as I can tell this is the only way to do this upgrade.

Now you can add one more hack to my list of SharePoint “resources” :)

Update: Well the upgrade went pretty smooth. There was one little glitch with the Xml Serialization namespace which I had somehow changed on a couple of the web parts. This meant the settings weren't showing up. So I changed them back, recompiled, uninstalled/installed the web parts and everything worked. Pretty cool! Not sure how else you could do this.

WebPart Resources

Posted in SharePoint at Monday, October 18, 2004 10:44 AM Pacific Daylight Time

I spent the whole day working on upgrading some web parts to fix some bugs and to make sure they meet some new web part standards that we have at my work. One of those standards is that the assembly must be signed. If you've built web parts then you probably know about the PartImageLarge element in the DWP file (if you don't, the rest of this post probably won't be too interesting). In the PartImageLarge element you specify the path to the image for the web part which shows up in the Add Web Part dialog.

Now, if an assembly is not signed, your resource path will look like:


This is pretty simple so my DWP files had this hard coded in them for each image. However, once you sign a web part assembly your resource path suddenly changes to something much more cryptic:


Okay, so it isn't terribly cryptic, but enough to make me want to figure out a better way than to hard code it. So, I do what I usually do when I need to figure out something like this: I look at what MS did in their web parts. After a quick look at the Office 2003 web part DWP files I found my answer. It is actually very simple. Just replace the path with _WPR_ and SharePoint will work its magic. So the PartImageLarge element get changed to:


Wow! The cool thing is that this works no matter what your path is.

Update: BTW, I forgot to add you can get this same coolness when you're programming webparts. It is the ClassResourcePath property of the WebPart class (you can reference it in your class via base.ClassResourcePath). Somehow I missed this cool property so I wanted to pass this along so you didn't.


And Another Thing

Posted in General at Friday, October 15, 2004 7:57 AM Pacific Daylight Time

While I'm still ranting about MS product issues let me add one more rant. :)

I just finished upgrading from the Virtual Server 2005 RC to the RTM. Just went to copy/paste from my desktop to the Virtual Server and it still doesn't work. $#@%! Grrrrr. This is the most irritating short coming of Virtual Server 2005.

Is there some kind of workaround for this (besides opening Notepad2, pasting, saving, closing, opening, copying, pasting)?

I'm not the only one

Posted in General at Friday, October 15, 2004 3:34 AM Pacific Daylight Time

Looks like the Windows update reboot happened to another blogger besides me. Funny, Scoble defends Windows Update saying:

When our customers are in severe danger of getting hit by criminals, you really need to make sure you get your machine patched.

Come on! My machine is sitting behind a firewall along with quite a few other machines. I've been maintaining them for years and now suddenly Microsoft can decide to reboot my machine because I'm in “severe danger”? I disagree. Microsoft assumes I'm in severe danger and assumes I don't know how to maintain my own machine. Windows update is getting dangerously close to the definition of a computer virus:

A program or piece of code that is loaded onto your computer without your knowledge and runs against your wishes.

Rebooting my computer was definitely against my wishes. However, since I've allowed the updater to run I guess I'm to blame.

While You Were Out

Posted in General at Thursday, October 14, 2004 6:40 AM Pacific Daylight Time

Ok, so you already know about how cool Google Desktop is so I won't bore you with details, but I want to make a comparision.

Today I downloaded and installed the Google Desktop, and while I was out it indexed all the files on my computer so I can search them. Cool.

Yesterday I was making dinner after I got home from work. I found the recipe I wanted to make and started working on getting the ingredients together. I put some pine nuts in the brolier to toast them and when I came back to my computer to print the recipe I found my computer was just finishing shutting itself down. I was totally confused by this and ended up burning the pine nuts to a crisp while I waited from my computer to come back up so that I could print the recipe. When it finally did I noticed a little checkbox shield icon in the tray that told me Windows had rebooted itself in order to complete an update. Very, very uncool.

The recipe turned out great, but the whole self-rebooting thing left a bad taste in my mouth. I had several things open on my computer, including a movie that I was watching which I had paused half-way through. So where does the updater get the idea it can just close all my stuff and reboot itself? What if I had a project open and I hadn't hit save yet and spent 10 minutes on a phone call?

I'm all about my computer doing stuff for me while I'm out, but I think Windows Update has taken this one too far.