Sunday, February 05, 2012 Register  Login

This site uses DNS Made Easy. Use it for reliable and professional DNS services.

RSS Feeds
Categories
  
Blog Archives
  
Blog

Entries for October 2007

Oct
31
 754 Views ::  5 Comments RSS comment feed

After some more testing I found that the URIBuilder class does not work correctly with UNC path. Here's the updated code: 

public static string PathToFileUrl( string pathToConvert )
{
    string fileURL = "";
    bool isUNC;
    UriBuilder fileURI = null;
 
    // This is to capture whether the incoming path is
    // an UNC path or not.
    if ( pathToConvert.StartsWith( @"\\" ) )
    {
        isUNC = true;
    }
    else
    {
        isUNC = false;
    }
 
    try
    {
        fileURI = new UriBuilder( pathToConvert );
    }
    catch( UriFormatException ex )
    {
        // This is for debugging
        string msg = ex.Message;
    }
 
    if ( isUNC )
    {
        if ( fileURI != null ) fileURL = fileURI.ToString();
    }
    else
    {
   if ( fileURI != null ) fileURL = fileURI.ToString().Replace( "file://", "file:///" );
    }
 
    return fileURL;
}

posted @ Wednesday, October 31, 2007 12:33 AM by Hector Sosa, Jr

Posted in: Code

Actions:Tweet This Share on Facebook Share on LinkedIn Emakl Permalink del.icio.us
Oct
29

I finally got beta 2 out the door. I got to deal with some really interesting bugs. I'm very happy with my build deployment time. It went down from about 2 hours to just 10 minutes.  FinalBuilder helped me get a handle on builds. I now have a consistent repeatable process. Unfortunately, testing time has gone up, especially now that I test in several versions of Windows.

Without further delay, click on the image below to get to the download for Beta 2:

Download beta 2

posted @ Monday, October 29, 2007 11:35 AM by Hector Sosa, Jr

Posted in: PainlessSVN

Actions:Tweet This Share on Facebook Share on LinkedIn Emakl Permalink del.icio.us
Oct
21

I got most of beta 2 done already. I'm finishing a feature that should help a lot of people that are having problems configuring their servers in PainlessSVN. The issue is that people who are new to Subversion set the repository root directory incorrectly. What I'm doing is taking a page from Microsoft Internet Explorer's book.

The reason IE got very popular is that it worked even when people used very bad HTML for their websites. That was all good when the World Wide Web was fairly new. This feature doesn't fly today, because there are a lot more experienced people who want standards in browser DOM. Browser differences in the DOM cause all kinds of headaches for web designers and developers. And that's the main reason I avoid web programming. And that's ok, there's plenty of other types of programming out there. One type of programming is not "better" than another, just different.

Now, back to PainlessSVN... Subversion is just gathering steam in t he programming world. Windows programmers have been stuck with Visual Source Safe (VSS). Both Subversion and VSS are essentially free. Subversion is hands down more stable than VSS. I'm adding code to detect badly setup repository root directories. Here's an example of what I mean:

The highlighted directories should be inside a repository. These directories should not be in the top level directory. I need to add code so that PainlessSVN does not choke when dealing with strange setups like that. In essense, I need to let the software be more usable, and not give users grief. Most people just want it to work, and don't care for the little details that are necessary to make things work correctly.

I'm also in the process of finalizing testing the new changes for the install script in my virtual machines. The problem with Windows 2003 Server Standard Edition has been resolved. It was all the installation script, and not PainlessSVN. Basically, the MMC 3.0 libraries get install in the "wrong" directory. The install script copies them to the right directories. This solves the problem permanently.

Beta 1 will still work, as I haven't put in any time based kill code (yet). My wife, Tammy, was sick all last week, and that killed all of my spare time to work on PainlessSVN. Tammy is much better now, so I should have more time to work on  this.

posted @ Sunday, October 21, 2007 7:45 PM by Hector Sosa, Jr

Actions:Tweet This Share on Facebook Share on LinkedIn Emakl Permalink del.icio.us
Oct
19

I'm officially 40 today!

All I really want for my birthday is some sleep! My wife has been sick with straph all week. As you can imagine, I haven't got much sleep myself.

I'm hopefully out of the "young whipper-snapper" zone now.

posted @ Friday, October 19, 2007 8:10 AM by Hector Sosa, Jr

Posted in: Personal

Actions:Tweet This Share on Facebook Share on LinkedIn Emakl Permalink del.icio.us
Oct
16

I had an interesting time fixing a bug in PainlessSVN when using UNC paths. I had a function in SVNManagerLib that converted the path to the file:/// format. This is what the original looked like: 

public static string PathToFileUrl( string pathToConvert )
{
     string parsedDir = "";
     StringBuilder arg = new StringBuilder();
 
     parsedDir = pathToConvert.Replace("\\", "/");
 
     arg.Append("file:///");
     arg.Append((char)34);
     arg.Append(parsedDir);
     arg.Append((char)34);
 
     return arg.ToString();
}

That didn't quite work. I did some Googling and found the answer. Let me post the code first then, I'll explain:

 

public static string PathToFileUrl( string pathToConvert )
{
    UriBuilder fileURL = new UriBuilder( pathToConvert );
 
    return fileURL.ToString();
}

The UriBuilder is a special class that helps build valid URIs. I keep learning this lesson over and over... Don't re-invent the wheel, just use what the .NET framework already has. There's quite a bit in there. I've been using .NET since 2002, and I keep finding these little nuggets.

posted @ Tuesday, October 16, 2007 8:11 PM by Hector Sosa, Jr

Posted in: PainlessSVN, Code

Actions:Tweet This Share on Facebook Share on LinkedIn Emakl Permalink del.icio.us
Oct
10

I needed to add a boatload of files to a copy operations to a test FinalBuilder project/script. I remembered the filesets in NAnt. I was extremely happy to discover that FinalBuilder has them. I sure was dreading having to add a copy action for each file.

 FileSet Actions

The specific situation was that I needed to test about 6 different configurations for the problem I had with PainlessSVN and Windows 2003 Server Standard Edition. I just made copies of my original script for PainlessSVN. One of the scenarios had me protecting each separate file using .NET Reactor and not merging them. I needed to copy them to a directory so that both the .NET Reactor and InnoSetup could use the Release version of my assemblies.

Filesets in my script

I added a fileset to the first test version and used that subsequently. My rule of thumb is to use them when doing operation on more than 3 files.

Anyways, it's been a long time since I felt warm fuzzies for a software utility.

posted @ Wednesday, October 10, 2007 8:13 PM by Hector Sosa, Jr

Posted in: .NET Tools

Actions:Tweet This Share on Facebook Share on LinkedIn Emakl Permalink del.icio.us
Oct
10

I've decided to freeze the current feature set for PainlessSVN Professional v1.0. This means that these features are not going to make it into version 1.0:

  • Load dump files
  • Drag and Drop of folders and files
  • Parsing of directory based authorization

I need to concentrate on pushing this release out. I'm almost ready for beta 2. If no major problems are found, then I will release it to the public. I was able to fix the problem with PainlessSVN not working on Windows 2003 Server Standard Edition. I still need to test UNC paths used to configure the server registration.

I'm working on licensing and the eCommerce parts now.

posted @ Wednesday, October 10, 2007 6:29 PM by Hector Sosa, Jr

Posted in: PainlessSVN

Actions:Tweet This Share on Facebook Share on LinkedIn Emakl Permalink del.icio.us
Oct
10

I gotta say this is one of the coolest things I've heard in a while!

http://www.svniis.org/

This is start, but it doesn't go far enough for me. The current setup still needs an Apache server running. The author is planning on hacking WebDAV directly, if there is enough interest. I would definitely love being able to get rid of Apache altogether. That's why I run my Subversion servers with svnserve.exe

posted @ Wednesday, October 10, 2007 6:17 PM by Hector Sosa, Jr

Actions:Tweet This Share on Facebook Share on LinkedIn Emakl Permalink del.icio.us
Oct
06

I installed ProcessMonitor from Systernals in my Windows 2003 Server Standard Edition SP2. The fist time I ran it, Windows gave me a Blue Screen Of Death (BSOD). The stop code was 0x0000007. I rebooted the VM, and was good to go.

After a few hours of tweaking, I found the root problem. I have a solution, but I'm not happy with it. Windows 2003 is looking in C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727, but not in C:\WINDOWS\System32. Microsoft installs the MMC 3.0 libraries in C:\WINDOWS\System32. Unfortunately, the path-looking routines are ignoring the PATH environment variable completely.

MMC 3.0 snapins are registered in the system by using the InstallUtil.exe utility in C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727.

The brute force solution is to copy the needed assemblies to the PainlessSVN directory, or to C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727. I really don't like either one, because I hate messing with an user's system files, but that's my network administrator experience talking.

The strange thing, is that I have a routine in the install package to do exactly this. It's not working on Windows 2003 Server Standard Edition SP2, but works fine on SP1.

At least I'm making some headway with this ridiculous issue...

posted @ Saturday, October 06, 2007 4:46 PM by Hector Sosa, Jr

Actions:Tweet This Share on Facebook Share on LinkedIn Emakl Permalink del.icio.us
Oct
04

A friend of mine is working on an admin tool for the Subversion server on the MacOS. Here's what he's got so far:

SVNAdminX for MacOS

I believe he's using the SVNManagerLib library that I created for this. I'll need to get more details from him. He's the same guy that create WinTivoDecode.

posted @ Thursday, October 04, 2007 8:17 PM by Hector Sosa, Jr

Posted in: Subversion

Actions:Tweet This Share on Facebook Share on LinkedIn Emakl Permalink del.icio.us
Page 1 of 2First   Previous   [1]  2  Next   Last   
Terms Of Use | Privacy Statement | SystemWidgets
Copyright 2002-2012 by SystemWidgets
Google Analytics Alternative