Annoying Visual J# Redistributable Package still installs with Visual Studio 2005 (August CTP) even after numerous complaints and many promises from Microsoft that it will be removed from the default installation.
Since it does not take much effort to remove it, I can only assume this to be a political decision and one can't argue with that. Sigh.
Be the first to rate this post
- Currently 0/5 Stars.
- 1
- 2
- 3
- 4
- 5
If you'd like to try the all-new Microsoft command line shell a.k.a.
Monad but don't want to apply for beta at
Beta Place now you can - publicly available WinFX SDK beta 1 contains the latest Monad build. Both work with Visual Studio 2005 beta 2 so you can put them all on one virtual machine (you
are using
Virtual PC or
VMWare for beta builds, aren't you?).
Be the first to rate this post
- Currently 0/5 Stars.
- 1
- 2
- 3
- 4
- 5
Turns out my colorizer module is misbehaving even after I fixed what I thought was generally the problem. Note to self: thoroughly debug any ASP.NET modules you build as they affect all of the output on a Web site.
I have disabled the colorizer until I find a fix and used the chance to upgrade the CAPTCHA control along the way.
[Update] If you click on Feedback text below the message (the most natural thing to do) CAPTCHA control chokes on the #Feedback being the last text in the URL. If you click on the title of the message, there are no problems. Numerous people have reported this problem but the author did not respond. Surprisingly (or not) the same thing does not cause problems on his weblog, so I can only assume he has internally fixed it but has not updated the link to the binaries. Sigh. So if you have a problem with the missing picture, please click on the title of the post and the picture will appear. Also note that this control is very unforgiving - if you do make a mistake, the whole comment text disappears (again, author knows about this)! Please do copy text to the clipboard before clicking Submit, just in case...
[Update again] Turns out I shouldn't have updated the spam prevention control. After fixing my own ASP.NET module bug and reverting to the previous version of SharpHip control everything seems to be back to normal. Whew. I think I'll just let it be like this until I move to Community Server...
Be the first to rate this post
- Currently 0/5 Stars.
- 1
- 2
- 3
- 4
- 5
Something broke badly and the system I am using to protect the blog from the blog spam is now a bit too effective - it will prevent anyone to post :(
I am guessing that some of the ASP.NET modules I recently installed have broke the SharpHIP control that I am using. I'll do my best to resolve this in a few hours.
Be the first to rate this post
- Currently 0/5 Stars.
- 1
- 2
- 3
- 4
- 5
Two lucky coders and one blogger will attend PDC for free, but none of them will be me :( Nevertheless, it was fun competing and having a deadline really pushed me to finally release something.
So now it's out - I have been playing with the idea for quite some time, developed most of it during last year, then abandoned it for almost half a year only to refactor and change a lot more than I expected before attaching a GUI onto the download engine I thought I had. If you'd love to use BitTorrent but absolutely must have a .NET solution, you can try NTorrent now - just head on to the Channel9 PDC contest and download my entry. I will soon publish here a version that does not require Shareware Starter Kit and that is further improved. The contest pushed me over to .NET 2.0 so I'm afraid that will be mandatory.
Speaking of coding contests, Mike Gunderloy is having one over at Larkware. Mike is actually very bold and was teasing Microsoft yesterday:
I note that Microsoft only managed 16 entries to a contest giving away a trip to the PDC. So here's a challenge to the Larkware community: I'll bet we can get more entries than that for the Larkware 2005 Developer Tool Programming Contest.
No disrespect Mike but I think that this contest is a bit contradictory.
First of all, just like with Channel9 contest it is required that all the entries be freely downloadable. This rules out any kind of serious development, if we don't count some kind of crippled version of a regular product. Second, the deadline is short - nobody can develop anything serious with a tool that is still in a beta in two months (I should know, been struggling with beta 2 bugs quite a bit). Thus I conclude that the only entries will be from single developers working on their "for fun" projects at home, after work.
But if we look at the prizes they are all what is known as enterprise class software, stuff for teams or unlimited site licenses. It might have high nominal value in dollars, but it has very little value to me as a single developer of a future microISV. Therefore I find it hard to motivate myself to apply and I think others might come to the same conclusion too. On the other hand, a trip to PDC has just right value for this kind of competition even if it has lower nominal dollar value. So I wouldn't laugh just yet ;)
In any case I would still recommend people to compete if they have something already and feel the itch to try Visual Studio 2005. I learned a lot while porting my app and by the time Visual Studio 2005 ships it will take me no time to adjust - I already have.
Be the first to rate this post
- Currently 0/5 Stars.
- 1
- 2
- 3
- 4
- 5
I just posted an article on code generation using XSLT. This one puts custom, hand-made XSLT solution against CodeSmith based one and shows pros and cons of such an approach.
Just to remind you, the code generates Visual Studio .NET 2003 solution/project files wrapping legacy makefile “projects”.
Check it out here.
Be the first to rate this post
- Currently 0/5 Stars.
- 1
- 2
- 3
- 4
- 5
The best code is no code - nothing to debug and maintain and no bugs. Of course an app does not exist without at least some code but we should strive to have as little as possible.
Small things add up. That's why I was unpleasantly surprised to find the following in the code for the About box that will be generated for you as soon as you add a pre-made About box form in Visual Studio 2005:
public string AssemblyCompany
{
get
{
// Get all Company attributes on this assembly
object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCompanyAttribute), false);
// If there aren't any Company attributes, return an empty string
if (attributes.Length == 0)
return "";
// If there is a Company attribute, return its value
return ((AssemblyCompanyAttribute)attributes[0]).Company;
}
}
Note that the code is clean, commented and correct. Also note that the About box form uses assembly information instead of duplicating this data in the form itself, which is commendable. For each information item in the form, there is an associated property like this one.
However, practically all properties look the same - pick an assembly attribute type, fetch it and if there's something there, return it back. Same code with very little variation. Exactly the problem generics are trying to solve, no? So with a little of generic code and reflection, I give you simplified version of the above code:
public static String GetAssemblyAttribute<TAttr>(Assembly asm, String propertyName)
{
Type t = typeof(TAttr);
object[] attributes = asm.GetCustomAttributes(t, false);
if (attributes.Length == 0)
return "";
PropertyInfo pi = t.GetProperty(propertyName);
return pi.GetValue((TAttr)attributes[0], null) as String;
}
It's easy to use - just provide the type of the assembly attribute and you're good to go. Being a static function, it's useful for placement in a general utility class you must already have somewhere in your project, which brings me to the second point - written like this, code is usable outside of About box form. Where would you use it? Why, in the splash screen, of course.
Be the first to rate this post
- Currently 0/5 Stars.
- 1
- 2
- 3
- 4
- 5
A day only has 24 hours so one has to choose what to read and/or track. Microsoft has been advocating several ways to communicate with them one of which being Microsoft Technical Forums, others being asp.net forums and a myriad of newsgroups.
By far the most useful one for me up to now has been Microsoft Technical Forums. Even better, if you search for help in Visual Studio 2005 one of the sources will be this very forum. I learn the best by example and dry definitions from MSDN library are good when you want to nail down some corner case or similar, but nothing beats a small working sample and that's exactly what you can find in this forum.
One very cool feature of the forum is a possibility to mark a post as being correct answer to a posted problem so a very quick glance is enough to zoom in on the "meat". I am pleased to find that forums are frequented by Microsoft developers who actively participate and help others. So it's not just "user helps user" type of forum but a great channel of communication between those producing and those using Microsoft technologies.
Be the first to rate this post
- Currently 0/5 Stars.
- 1
- 2
- 3
- 4
- 5
In short, great experience. There are problems though (especially since this is still a beta). Sometimes the designer would get very confused and trash half of your source code (!) so code softly ;) and use Source Code Management (SCM) system. If you think SCM is overkill for your small project, just think of hours (or days) of effort destroyed completely in a second or two and you'll change your mind. There are several free solutions out there but personally I use and recommend SourceGear Vault - it's free for a single developer. But I digress...
If you are coming from native land of C++/MFC you'd be surprised to see how far the design support in Visual Studio 2005 (actually, already in 2003) goes. Thus you might run into the following issue - your user control (owner drawn window in old lingo) might need to do something tricky and/or complicated during instantiation, something that would work only in runtime. For example, in my case I had a singleton object that provided data to be bound into the BindingSource and Visual Studio choked on the private constructor. The result? Long call stack dump and no design experience for you.
The solution? [Shamelessly stolen from Joe Stegman's .NET 2.0 Outlook 2003 look-alike and probably a well-known thing to WinForm veterans] It's enough to check if your control is hosted inside a site that is in design mode:
public class MyUserControl : UserControl
{
// other methods
private void OnLoad(Object sender, EventArgs e)
{
if ((null == Site) || (!Site.DesignMode))
_bindingSource.DataSource = MySingleton.Instance().GetBoundData();
}
}
Of course, now you loose ability to actually see anything useful in design mode. For that I recommend using a mock object - something that looks, feels and behaves the same as the real object, but contains only enough data to support preview in the design mode.
Be the first to rate this post
- Currently 0/5 Stars.
- 1
- 2
- 3
- 4
- 5
If you haven't heard by now go and check it out, Microsoft is holding a competition over at Channel 9 website. Three lucky winners will be able to attend PDC 2005 practically for free, two from Code'n My Way and one from Blog'n My Way category. I was never much of a writer (besides, English is not my mother tongue), so I decided to go with the code contest :)
Like every good card player I am not going to say yet which app I will post, but let's just say it has something to do with P2P ;) I have been using Visual Studio 2005 beta 2 for a few weeks now (contest rules require it) and in short I am really impressed. They say that Microsoft never gets it right with first, but always gets it right with third release of any product. Well, .NET 2.0 is the third release :), so is Visual Studio 2005 and it shows. Both the IDE and the library are very mature and comfortable to use and it's been a joy working on my entry.
Be the first to rate this post
- Currently 0/5 Stars.
- 1
- 2
- 3
- 4
- 5