So I ask, what do you do for fun on the weekends? I seem to enjoy managing my home network. This weekend, it was fixing active directory, which meant, removing my primary DC and replacing it. I had been having problems for quite some time, but had not had the chance to setup a new DC to take over the FSMO roles. Well, with the addition of my new DL 380 server, I finally decided it was time to fix all those annoying AD problems. I started out by create a new DC (02) as a VM on my primary desktop computer. Since I'm running 3GB or RAM in it now, I have enough to spare to run a DC to manage all of 5 computers at my house (I know, overkill). After I got the new domain controller (02) up and running, I let it sit for a week, mainly because I had other things to take care of. It also made sure that some of the AD replicated over. Since this is my home network, and if I completely trash it, I'm not out of a job, I'm taking a fair number of shortcuts (which probably led to my primary DC experience problems in the first place), so I would not use my steps below as is in a production environment. I knew I needed to transfer the FSMO roles from the old DC (01) to the new DC (02), and did so by following this guide. I also set the new DC (02) to handle the Global Catalog using this guide. I rebooted the machine between each step, and checked the event log for any errors. I finally got it down to where there were no errors on startup, and everything seems to have been replicated to the new dc. So it was now time to kill off the old DC (01), and make a new one (still 01). I followed this Technet article on how to demote a domain controller. DCPromo failed the first time on the NETLOGON step, but the 2nd time it was a success. I shut down the VM, deleted the old vmdk, and copied the vmdk from my base image to the folder for the DC (01). DC01 booted up, as expected, so I configured it for Sysprep rebooted, and went thru the setup wizard. Did a quick windows update, installed DNS, and I was ready for some DCPromo Action. Not much to say, the DCPromo went smooth, changed the FSMO roles and GC back to DC01, rebooted, and everything was looking good. There was one last issue, and that was with DNS. I was getting a warning under event id 4515. I installed the Win2k3 support tools and used ADSIEdit.msc per these instructions to fix it. I deleted the extra zone from the domain (option 2) and the "system" (option 3), leaving just the zone in the forest (option 1). I restarted the DNS service on both DC's, and no longer got the errors.
Get a new server, get volunteered to run a dedicated game server. This is the position I find my self in. Being a Microsoft guy, I do occasionally like to dabble in Linux just to see what all the hype is about, and Linux makes for a pretty good dedicated game server, and so begins my foray into installing and configuring Linux. Install Linux I began by downloading a distro, and Ubuntu is a distro I've played around with before. I opted for the server version, which only installs a core set of files. The installation was extremly easy, as I opted for all the defaults, and did not install the DNS or LAMP packages either. I could see myself installing apache at a later date to host a small website that has info, and stats (if supported) for the games I will be hosting. My other option would be to FTP the stats up to my hosted environment. After the install, I was using around 515MB of my 8GB main drive, and approximately 70 MB of my 1GB of allocated memory. I am a little concerned that the default installation settings only gave me a 400MB swap file. In the past when installing Linux, it has always been suggested that you create a swap file that is the size of 2 * Ram, or in my case 2 GB. I will leave it as it is for now. I found some instructions on how to make a swap file on the main partition and have noted them below for future use. Add Swap File - sudo su
- dd if=/dev/zero of=/swapfile bs=1024k count=256
- mkswap /swapfile
- swapon /swapfile (not persisted, see next step)
- Edit fstab included the following line (remember to use sudo)
- /swapfile none swap sw 0 0
Setup 2nd Hard drive The next step was to setup the 2nd virtual hard drive I had configured as the 2nd scsi device. I followed these instructions. First, you can view your current disk usage, by typing "df -h", which will display in MB. Next, you can use the fdisk command to view and create partitions. First I did "sudo fdisk /dev/sda" to view the current partition setup of my main boot disk (p to view partitions, q to quit fdisk). Next, I ran fdisk on the drive I wanted to setup, "sudo fdisk /dev/sdb", and created (n) a primary partition (p) as the first (partition). Finally commit the changes using the w command. Now that we've created the partition, it needs to be mounted. This can be done by typing "sudo mkfs -t ext3 /dev/sdb1". I chose the ext3 file system for my new partition. After battling with vi for 15 minutes, I decided to try out nano as my text editor for this next step, and it worked like a charm. It looks like it might be an updated version of pico, but I don't know. Anyway, the last thing that needs to be done is to mount the drive so that you can access it. - Create the directory you wish to mount the partition to. I create a directory called data in root using "sudo mkdir data".
- Edit fstab using nano. "sudo nano /etc/fstab"
- Add the following line (the spacing between each word of text is a tab)
- /dev/sdb1 /data ext3 defaults 1 2
- Save by pressing ctrl+O, followed by ctrl+X to exit
- Type "sudo mount /dev/sdb1"
- Now you can see your new hard drive (partition) when you do "df -h". You can also cd /data to go to the root of the new partition.
- I wanted to test persistence, so I rebooted linux using "sudo /sbint/shutdown -r now"
I noticed after my reboot (besides my new partition being mounted), that I was only using 32MB of ram, and 0 swap. I left the server run overnight, and now I'm up to 65MB of ram used, still alot better then the 150-200 a clean Win2k3 uses at startup. Directory Setup, Download and Install Now that I have my HD all setup, and a new /data folder, I can proceed with getting the game server files. I am creating a games sub folder, as I like my stuff very neat and organized. All game servers will obviously go in this folder. Since I don't want to run the game servers as root, I will need to either use my user account or create a new user account. I decided for the later, and created a new user called gamer, which also created a gamer group. I decided to use the existing games group, adding gamer and my account to games, then removing the gamer group. Then I gave the games group permissions over the games folder. I'd like to have game files updated automatically, so I will give the games account rwx permissions over the games folder. If I was really paranoid, I could create a new user account for each game, and only give it read permissions on the directory for that specific game. Then set execute and write permissions only on the necessary files and directories, but I don't think I need to go to that level. - sudo adduser games
- edit the /etc/group file to add my account and the gamer account to the games group
- Find the new group you just added at the end of the file, and add the users you want to belong to the group, separated by commas.
- Change ownership to the games group
- sudo chgrp games games
- sudo chown games games
- sudo usermod -g 60 gamer (Change gamer's primary group to games)
- groupdel gamer (delete the gamer group)
Following these instructions, I setup the steam client and started the download for TF2. The instructions are for a CS server, but they work up to the point were you specify the game you want to download. - Create the hdls_l directory
- Use wget to download the file (I could be downloading a trojan here for all I know, but I'm guessing the forum thread wouldn't be stickied on Steams Site).
- Extract the steam program using tar -zxvf steam.tar.gz, and remove the .gz file.
- Make steam executable and run
Now I ran into some problems here, when I decided I wanted to move my steam program, and subsequent downloads into a steam folder. After coping steam to the steam folder, I deleted some files I shouldn't have and got an error message saying I had an incompatible version. Use this command to reset steam and force it to download the latest version: rm ~/.steam/ClientRegistry.blob I finally got the game downloading but spent so much time messing around that I forgot what I did. So ends this section :( TF2 server configuration I found a server.cfg on a forum post that looks pretty promising, although, it does error out in some places. I also installed screen, so that I can start up the server and leave it running in the background after I log out from SSH. While I've used screen before, I forgot about it until I came across this tutorial for running a dedicated source server. I finally got around to giving the Linux server a dedicated IP address, setup port forwarding, and gave the game server a password to join. I'm able to connect to it locally, but have not tried from outside my own network. Server Lock down Basically, I want to add some precautions incase the Linux server is by some chance, hacked or taken over. Primarily, I want to isolate the Linux server from the rest of the network. I know that there are a couple of options out there, I just need to research them. More to follow. Other Linux Commands I always forget - passwd - Change the current users password
- adduser [username] - Adds a new user, with the username specified by [username], to a group called [username]
- chgrp group directory/file- change group ownership
- chown user directory/file
This started out as a quick post on the new Integrated mode in IIS7, and while looking for information on it, turned into a larger post on new features in IIS 7. Integrated Mode: Integrated mode, refers to the new integrated pipeline for serving requests and responses in IIS 7. It is the way in which extensions are executed on IIS 7, and supports managed code, and not just C++ anymore. Since managed code is supported, you can write handlers in C# which can be executed on classic asp pages, static pages, etc. The common example I have seen, is that it is now possible to use asp.net forms authentication at a site level, protecting all content served from IIS. I remember being able to protect static content by changing a config setting, however the memory usage for the asp.net worker process would climb out of control because it was actually reading the file to be downloaded. I did not have enough time to try the examples I found, but they seem pretty straight forward. Check out these articles on integration mode for more details: What does Microsoft like about IIS 7?: That might seem a little weird, or obvious, since IIS 7 is a Microsoft product. However, this blog post lists the top 10 things that Microsoft Ops like about IIS 7. I've picked out the ones that I think are most interesting and combined them. - Configuration and Manageability
- AppCmd command line tool.
- XML based configuration file (ApplicationHost.config) (say bye to the metabase). Even better, is that you can share this XML config file via UNC and setup all your web servers the same way.
- Default location is: \%systemroot%\system32\inetserv\applicationHost.config (On vista it was in a config sub directory).
- I was only able to open the file after I copied it to the desktop.
- Request filtering in ApplicationHost.config replaces url scan.
- See this article to get started.
- It looks like you can only configure Request Filtering by editing the ApplicationHost.config.
- There is also a new related option, hiddenSegments that defines files and directories that are not servable. For example, web.config, /bin, etc.
- Failed Request Tracking
- Low overhead, but you still need to be careful when using on production
- UNC Content
- Improved support for sharing content from a file server to a web server.
- Use DFS and other tools in Win2k8 to sync files between 2 or more file servers to eliminate single points of failure.
- Dynamic output caching
Resources:
When markup won't do, why not markdown? [Scott] recently wrote about JottIt and MarkDown. JottIt is a simple way to create a web page. The content is rendered using Markdown, and feels allot like a Wiki. Upon creation of your first site (just go to JottIt and type something in the big empty text box), you are redirected to a URL like http://jottit.com/d4b8y/. You do have the ability to create a sub domain with a more meaningful URL. Markdown is a way to support rich text, without using a rich text editor, which is how allot of Wiki's work, I just never knew there was a formal definition. The markdown that I have linked to, is a .Net port, and compiled into a .net assembly. Not requiring a cumbersome rich text control, and removing HTML formatting from user controlled text are two big reasons to consider MarkDown. The syntax as extremely easy, and rates high on Scott's WAF.
I attended a presentation sponsored by Microsoft, at their local office in Waukesha; ArcReady - Web 2.0 & Beyond, Applying Lessons to Your Company. Session 1 was used to define Web 2.0 in the eyes of the presenter, Jon, Rauschenberger, CTO for Clarity Consulting, followed by how to write web 2.0 applications on the Microsoft platform. Since you can't write an complete application in only 75 minutes, the 2nd session was more a quick sample of some of the technologies available. I was too busy trying to digest the first session to pay much attention, and I had seen most of the technologies presented before. For me, the first session made the trip down from Madison more then worthwhile. Previously I had thought of Web 2.0 as Ajax, but I know realize it's much more, and just because your site uses Ajax, doesn't make it a Web 2.0 site (and no, you don't have to have a web 2.0 site to be successful). The other main point I took away was, enterprise applications are still not ready to be mainstream web 2.0 applications. All of the examples provided were consumer grade web applications. High Level Notes: - Web 2.0 is a term used to describe a web site that encompasses many different technologies and concepts. I feel that to be a Web 2.0 site, you need to use 2 or more of the following, and do 1 of them really good.
- Develop a Platform, not an application (Facebook, SalesForce.com)
- Harnessing the Collective (Wikipedia)
- Data as the Next "Intel Inside" (Google Apps, Microsoft Live, Amazon S3)
- End of the Software Release Cycle (Google Apps)
- Lightweight Programming Model (Facebook)
- Software above a single device
- Rich User Experience (UX)
- Applications come and go, but a good platform has the potential to live on. Take a look at the big players, Microsoft, Google, Facebook, Salesforce, Amazon. They are all developing a platform for developers to write applications for. It kind of reminds me of the open source movement, where you you have a bunch of people producing a piece of software that is so much more then if just 1 person was developing it. Encouraging developers to design applications for your web platform, gives you more functionality then you could ever implement on your own.
- Automated testing and deployment to production is a must in the Web 2.0 age. Fear of breaking production and complicated build procedures slow the process of getting your application and features to market. It also makes it easier to fix bugs when they are found. This really helps support Agile/XP, which is the norm in Web 2.0. Breaking up features such that a single developer can implement something in one day, and let the automated build process deploy it, will get that feature to your customers much sooner. Consider following Microsoft and Google in that their web applications are always in beta.
- The traditional way of gathering requirements does not work as well in Web 2.0, especially with a very Agile, highly automated build. Having a BA sit with a customer and turn out the next version of Encyclopedia Britannica for requirements just doesn't work. Instead, a user experience expert, should sit down with the customer, and come up with a set of working screen mock ups that meet the customers needs. Then, these screens are turned over to the Architect and Developers to implement the backend systems, and hook everything up. This should cut significantly down on end user acceptance testing, since the customer already saw the working screens, which allows for automated deployment to production. The user experience expert needs to have some understanding of development, just as the developers need to have some understanding of the UI.
- End user participation is key in building loyalty. However, this is sometimes difficult in the enterprise (External and Internal), and depends on your application. Some examples of what you can do, and what is almost expected as a minimum in Web 2.0:
- Developer Blogs
- Tech Support Forums
- Feature Request Forums
- Allow customers to post reviews on products
- There is a difference between internal and external use of web applications in the enterprise.
- External refers to your public facing applications for customers.
- Internal refers to intranet applications, such as Sharepoint, used to help your businesses grow and manage data internally.
- Internal use of Web 2.0 is just as important
- There is a huge amount of untapped data trapped in the minds of employees.
- It is hard to get people to share information, and break down traditional barriers in the enterprise
- Platforms such as Sharepoint can greatly increase the exhchange of information, and management of data.
- You need to train employees on how to use the platform. For example, posting documents in Sharepoint is about 1% of it's total functionality, and in reality, a network share handles it better. The document revision tracking, linking to discussion boards, Wiki's, blogs start to leverage it's full power. How to create and use lists, sites and workspaces should be taught in a way such that IT doesn't need to have a hand in everything.
- Management needs to be comfortable with things like the Wiki and blog, and encourage their use.
The power point presentation should be posted in a couple of weeks: http://www.claritycon.com/arcready
Having some problems at work were some of our units in the field are having communication issues. IS says it's an IT problem, IT says it's an IS problem, a vicious cycle indeed ;) In order to help narrow the problem down, I (representing the IS team), and my co-worker Mark (representing the IT Team, although in this case, he's really on my side) have installed some monitoring software on our home PC's to assist in the diagnosis. We needed something that was free and easy to setup for our little test, and Servers Alive fit the bill. The free/trial version of Servers Alive allows you to monitor up to 10 entries, with an entry being a 1 IP and 1 check. There are a large number of checks available, with the ones being used for our test tonight being, TCP Port Connect, FTP, HTTP URL, and Ping. I pretty much used up all 10 of my free entries, 8 of which were set to monitor stuff at work, and 2 were set to monitor 2 other external web sites (this blog, and msn.com), to serve as a baseline comparison. Servers Alive has excellent alerting capabilities, as well as a pretty extensible reporting engine, in the form of log files, and HTML generation based on templates. For our test, I'm using a sample template contributed by a member of the Server's Alive community, and then publish it via FTP (included functionality in SA) to my web site. I also have turned on the file logging capability and set it to maximum. I encourage you to check out Servers Alive, it's Features, and Free add-ons. After getting Servers Alive up and running, I turned to doing some research on other monitoring software that was available. One of the key requirements I was looking for, was a open source monitoring framework, something I could build my own monitors for and tweak stuff as needed. My Google search led me to a site at Standford that lists a plethora of monitoring and other network administration tools. I quickly scanned thru the list and picked out one commercial one that I had heard of before, and the gem I found in Polymon. GFI: GFI makes several commercial products, including the linked application, Network server monitor (NSM). NSM has tons of monitoring, reporting and alerting capabilities out of the box. There is support for using SQL as a data store, and you can extend and add your own monitors using VBScript. Pricing is based per IP, which makes it cheaper then MOM. With the SQL data store option, you could easily create a web site, or integrate it into an existing web site/portal. GFI states that no client apps need to be installed on the machines you are monitoring. Polymon: Polymon is an open source project on CodePlex, that meets my needs in that it is an open source monitoring framework, with a good deal of out of the box functionality, and it's based on the .Net Framework. Just looking at the screen shots, shows the amount of time that has been put into this project so far, and the project roadmap shows the developer has put some thought into this for the future. Out of the box, there are a good deal of monitors, although not as many as a commercial solution. The monitors in green are the ones required to replace our current commercial monitoring solution (if we choose that route). Even if we don't do it at work, I'll be looking to get this running on my new server. - CPU
- Disk
- File (Age and Counts)
- Windows Performance Counters
- Ping
- PowerShell Scripting
- SQL Monitor via Stored Procedures
- SNMP
- TCP Port
- URL
- Windows Service Monitor
- WMI Monitor
Polymon is extensible in several different ways, and you should check out some of the samples available. First, you can add performance counters, and WMI information to your applications. This approach allows you to switch to a different monitoring solution down the road, including MOM, as WMI is widely supported. From a SQL server standpoint, anything you can do in a stored procedure, can be monitored and reported on. Third, there is PowerShell, which in case you didn't know, gives you the power of the .Net Framework from a command prompt, so basically, you can write a script to do just about anything you want. Finally, you can make your own monitor by extending from an included interface and adding the assembly to the install folder. For our current project, I see a definite need f0r the existing monitors we are using (highlighted in green above), add in WMI for BizTalk, and we are a good way thru our monitoring requirements. One thing I see missing, is a email monitor, but this could be added via a PowerShell script, or custom assembly. Another thing missing, is a way to kick off a process (actually something missing from other monitoring software as well). Monitoring is great, but it can't tell you something is wrong if it doesn't know it's supposed to check something. Something that might be interesting, would be to add a set of wrappers around the BizUnit tasks and turn them into monitors. This would give me more support for BizTalk, add missing support for email, and add support for staring a process for automated tests. I need to look into Polymon more to make sure that there is functionality for manually invoking a monitor, as well as monitoring different things at different intervals. If it doesn't well, it's open source, so I can always add it. My only concerns are comments people have made about database performance and size. There is an item in the roadmap to help address the size issue, and some work around for performance. I guess I just need to get it installed and see how it runs. Again, it's open source, so changes can be made, ideally, back to the project itself to help foster it's growth.
I just picked up a new server off EBay to replace some aging hardware. I am now the proud new owner of a HP DL380 G3. I'll be updating this post after I get the server in, and setup.
I need a way to keep certain documents in sync between multiple computers at home and at work. At work I have a desktop and laptop, and am looking to pick up a used Tablet PC for note taking (since the laptop is configured as a desktop replacement). At home I have a desktop, and a laptop (although I do not use it much, it's mainly for the wife). What type information - Meeting Notes at work, User Groups, etc
- Notes from printed and on-line media.
- Scratch pad for project ideas
- Scratch pad for things to do (mode detailed then tasks, and probably not going to happen soon)
Where do I want this information - Available on all of my computers
- Preferably without requiring an Internet connection
- Easily share information with others via email, Internet (i.e. blog), internal share point site(s).
Concerns - Offline availability
- Getting out of sync between various data storage locations
- Some stuff I would not want sync'd to the computers at work.
Options: Below are the options I have come up with in alphabetical order. They are a combination of sync techniques and documentation software. - Blog with offline editing tool (i.e. Live Writer)
- Folder Share
- Groove
- Manual Sync
- OneNote
- Sharepoint Server (Personal)
- Wiki with Offline Editor and Sync
Current Solution (In Trial): As I wrote this post, it became clear that there is no one solution, and even more so, I was really looking to solve 2 different problems. The first, is, how do I get organized, the second, is, how do I sync files. - Continue to use Live Writer and blog as I have been. The information for the blog is meant to be shared with everyone on the Internet.
- Start using OneNote, synchronized with Groove, for meeting notes, project ideas, and general life organization.
- Look into using Groove or FolderShare to sync files between different computers. This requirement might go away as we start using Sharepoint at work more and more.
Blog I've already started using a blog to share information with others, as well as take notes for myself. I'm currently writing this post offline with Live Writer, and will later post it online. Pros: - Already setup and using
- Easy to share with others
- Options for offline editing, and offline availability
Folder Share Folder share is a free file synchronization service provided by Microsoft. I'm currently using it to synchronize my IE favorites and MP3's between multiple computers. I could use a variety of software to create and manage documents, and upon saving, the files will be sync'd between the computers I have setup. Pros: - Will work with a wide variety of software
- All Pro's from other document management options (assume con's are addressed by using different document management programs for different needs)
Cons: - Concerns over syncing files in a document editing environment (i.e. if you are smart, you save every couple of minutes, or the program you are using auto-saves. This could cause issues file Folder Share)
- The best way to set up the files you want to sync, would be to put them under 1 folder. However, this might mean you will be sharing stuff you don't want to
Groove A new collaboration application that ships with Office 2007 enterprise and ultimate, or can be purchased separately. A quick note about Groove and OneNote. If you setup a file sharing workspace, it will work. A blog post indicated that even more seemless support will be forthcoming in a future release. I can see Groove replacing folder share, but have to look into it more. Manual Sync I put this here just to be complete. I don't even want to go into the details of why manual sync is not the answer. It becomes so tedious, and error prone that I have just given up on it. Hence the need for the blog post. OneNote This is a document editor program, and requires some form of sync application. I really like the new 2007 version, it has a ton of new features, so many, that I think I might raise my target price on a tablet PC. - It has support for multiple notebooks, sections within a notebook, and pages within each section
- There is a new collapsible view on the left that gives a view of all notebooks and their sections
- Link to other pages, making it more like a Wiki
- Capture parts of a web page and put into a OneNote page
- Recognizes text in pictures, allowing you to search
- Live sharing session over the Internet, turns a page into a white board that everyone can write on.
- Flag items, and then view items by their flag.
- There is also a good amount of outlook integration, and with that integration, comes a bit of integration with Sharepoint.
- OneNote Mobile
- Inline Calculator
- Insert files as printouts. So if someone sends you a excel spread sheet, print it to one note, then you can write on it.
- Attach files to one note pages
- Audio and Video Recording
For sharing, there are some options. It has support for multiple computer use, however, the supported options don't work well for my situation right now. The supported options are, file share (which I don't have between work and home), Sharepoint (works is not publicly accessible, and I don't have a personal one at the moment), or USB flash drive (not sure if carrying around a USB drive is desired, although a 4GB drive on the key chain wouldn't be too bad). A personal Sharepoint server, as well as either a VPN connection at home, or VPN (should have it in 2 months), might make the folder share option a reality. VPN at work would also open up the sharepoint server at work. Finally, there is limited support in Groove (as noted above) Sharepoint Server (Personal) My web hosting provider, provides WSS as an add on for $19.95/year. This would open another option for the OneNote approach Wiki While most people think of Wiki's being Internet based, you can run them on your home computer. Why would you want to? For me, the Wiki is one of the best document editing applications out there. They have built in support for versioning, and you can easily create new "documents" and link them so easily. A the same time I setup this blog, I downloaded some Wiki software that has a internet version, as well as a desktop version (same code base) that runs in Cassinni. My plan was to use SyncBack and FTP to keep the internet and desktop version synced, but I have yet to test this. Pros: - Versioning
- Easy to add and link pages/documents
Cons: - Untested offline solution
- Pretty much limited to a web page (although you could link to a word document for example)
Following the lead of Scott, here is my list of tools that I use, as well as tools that I have come across, but have not used (but that sound really cool). Tools may be listed twice if they fall into multiple categories. Legend - $ - Costs Money
- $$ - Costs Money and I have actually purchased (vs. using a free version)
- % - Have not actually tried yet
- Free - This product is free.
- * - Indicates a note about one or more of the above descriptions
- Internet
- ie7Pro (Free) - Pluging for IE7 that adds things like spell check, ad block, download flash content, etc.
- Simp Lite (Free) - Seamlessly encrypt your IM conversations using this program. The free version only lets you encrypt one type of IM (i.e, MSN, but not AOL, AOL, but not MSN).
- Team Viewer (Free *) - Free for non commercial use. This is a remote desktop sharing program. Useful for those times when you play the role of tech support for family and friends.
- WinSCP (Free) - Free secure FTP program. I use this for connecting to and transferring files to VMWare ESX Server.
- YouSendIt ($ Free) - Free and Pay versions. I've used the free version to initiate, and receive large file transfers.
- Pocket PC / Smart Phone
- PdaNet ($) - Install on your computer and smart phone to enable your computer to user your smart phone as a modem.
- PHM Regedit (Free %) - Registry editor for your pocket pc.
- Programming
- Xsd.exe (Free) - Just because I have no other place to write this down, included with VS, and probably the .Net SDK, is the XSD.exe command line tool. It generates a class (partial class option) from xml or schema file for use with the xml serializer.
- Sql
- Utilities
- ISO Recorder (Free) - Shell integrated utility for making ISO images. You can make ISO's from existing CD/DVD's, or from a folder on your computer. It also support burning CD's and DVD's (Vista). The latest version supports Vista, and there are 64bit versions available.
- SyncBackSE ($$) - Sync, backup, restore files between a source and destination. I use this for keeping files in sync between by laptop and desktop, laptop and external HD, external HD and home computer. I've been using the free version for over a year and love it. I have finally decided to spend the $30 and purchase this product. $30 gives you a license to install on up to 5 computers, now that is a great deal. One of the licensed features I am taking advantage of is the FTP sync option to back up this blog to my local PC.
- Virtual Clone Drive (Free) - Mount .ISO images (and .img images from MSDN). Works on Vista, and under Win XP as a limited user.
- WinMerge (Free) - File and Folder diff tool. You can launch this directly from SyncBackSE
- Expression Media Encoder (Free %) - Encode rich media for Silverlight.
|