August 2008 - Blake Niemyjski

  • Tips & Tricks: Manually uninstalling CodeSmith.

    I've come across a few issues, where a CodeSmith install might become corrupt when going from a beta to RTM. The following guide will show you how to successfully remove CodeSmith from your computer. Please allow 10 to 15 minutes of your time to complete this guide. Please note: This guide could be used to uninstall other .net applications.

    1. You will need to download the Windows Installer CleanUp Utility. After you have installed this application you will need to launch the following executable: C:\Program Files\Windows Installer Clean Up\msicuu.exe. After the application is launched you will want to Select CodeSmith from the list and click remove. This will remove CodeSmith from the Installer Database. The installer database holds a record of each application you install on your computer.
    2. Next we will need to remove all the CodeSmith assemblies that are located in the GAC. Open up Windows Explorer and browse to: C:\Windows\assembly.
    3. Now you will need to right click all the CodeSmith.* assemblies and select uninstall.
    4. Next we will remove the configuration and program directories. The following directories will need to be deleted, please note the below paths are working paths for Windows Vista.
      • C:\ProgramData\CodeSmith
      • C:\Users\<user>\AppData\Local\CodeSmith
      • C:\Users\<user>\Documents\CodeSmith (If you want to remove your templates).
      • C:\Program Files\CodeSmith
      • C:\Program Files (x86)\CodeSmith (if you’re running 64bit)
      • C:\ProgramData\Microsoft\Windows\Start Menu\Programs\CodeSmith Professional 5.0
      • C:\ProgramData\Microsoft\Windows\Start Menu\Programs\CodeSmith Standard 5.0
    5.   You can now install a fresh copy of CodeSmith!
  • CodeSmith 5.0 RTM available now

    Over the past year the CodeSmith team has been hard at work on CodeSmith 5.0. This release contains many fixes, performance enhancements and other enhancements over the previous versions. Below is a list of some of the major changes between CodeSmith 5.0 and CodeSmith 4.0. I have highlighted some of my favorites below.

    5.0.0 Final

      * Added a tab for editing variables in the CodeSmith Project settings dialog.
      * Made it so that any .csp variables are automatically used when there is a string matching the variable value in the property values.
      * Made it so that variables are automatically created for connection strings stored in .csp files so that the connection string isn't repeated.
      * If you choose to remove all settings during uninstall, it will automatically try to deactivate your license.
      * Added more info about the current license to the about dialog.
      * Made schema explorer designers load their data sources async so that the UI would not lock.
      * Fixed bug where wrong data source was selected when the designer was opened.
      * Fixed error when adding references to Visual Studio project.

    Beta 2

      * Changed all SchemaExplorer designers to display in Object (Owner) format so that you can type the first couple letters to jump to the object you are looking for.
      * Added ability to override plural/singular forms of words to the StringUtil.ToPlural and StringUtil.ToSingular methods.
      * Added ability to specify Filter="SomeTableSchemaProperty" on ColumnSchema directives which will filter the list of columns in the designer based on the table selected in the specified property.
      * Added new RegisterReference method to CodeTemplate to indicate which assemblies your generated code relies on so that they can be automatically added in Visual Studio.
      * Performance improvements in adding files to the project system in Visual Studio.
      * Added a menu item for managing data sources to the Visual Studio CodeSmith menu.
      * Added step to the uninstall process to remove all samples and config files.  It will also automatically deactivate your license so you can use it on another machine.
      * Added syntax highlighting for the VB keyword "Infer".
      * Various improvements to the OracleSchemaProvider including full extended property support.
      * Made deleting items in the csmap editor more intuitive.
      * Changed ColumnSchema designer to use a treeview so that all columns for all tables aren't loaded at once.
      * Fixed issue with duplicate CSP item templates in the C# project system and missing in VB project system.
      * Fixed error with editing empty CSP files.
      * Fixed issue with beta license that was causing the application to freeze on startup when behind a firewall.
      * Fixed a bug with email addresses in the bug report form.

    Beta 1

      * Added ability to deep load all schema information at once which results in huge performance improvements.  This is used by setting the DeepLoad attribute on any SchemaExplorer property in your template.  This would typically be used when you know you are going to use all of the schema information from a database.
      * Ability to use .net 3.5 features in templates including LINQ.  This is accomplished by setting the CompilerVersion attribute on CodeTemplate to "v3.5".
      * CodeSmith Projects now have a single file output mode to generate all template outputs into a single file.
      * Added Ability to generate individual project outputs.
      * Changed Manage Outputs dialog to make it easier to manage outputs and added an options dialog for changing project settings.
      * Made it so that files being generated from a CodeSmith Project are checked out of source control before being edited.
      * Improved the custom tool upgrade process so that it works 100% in all scenarios without having to make manual changes afterward.
      * CodeSmith Projects can now add files to Visual Studio as code behind files to other generated files.
      * CodeSmith Projects can now set a generated files build action.
      * Added ability to resolve assemblies located in paths relative to the template now using Path attribute.  Looks in template folder and \bin folder by default.
      * Optimized template caching algorithm allows for much improved performance.
      * Templates use partial classes now so you can have partial class code behinds and have access to template properties from the code behind file.
      * Added template metadata caching.
      * Added GetPropertyAttribute and SetPropertyAttribute to CodeTemplate.
      * Property attribute values are added for any non-recognized attributes on Property, XmlProperty and CodeTemplate directives.
      * Made all SchemaExplorer objects serializable.
      * Fixed bug with refreshing SchemaExplorer objects where it would not show all extended properties of the object after refresh.
      * Re-organized all sample templates and projects into a more logical folder structure.
      * Added new NHibernate templates in both C# and Visual Basic.
      * Made various improvements to the Plinqo templates.
      * .netTiers updated to the 2.3 Beta version of the templates.
      * Added VB versions of many sample templates and projects.
      * Added a couple new maps and ActiveSnippets.
      * Included the latest version of the NuSoft framework templates.

    Download Links Available Below:


  • Visual Studio 2008 SP1 and .NET Framework 3.5 SP1 RTM

    I was so happy to see that Microsoft has finally release Visual Studio 2008 SP1 and the .NET Framework 3.5 SP1. It contains so many improvements and bug fixes; you can view the full list of the enhancements at Scott Guthrie's blog.

    "Unlike other Service Packs from Microsoft, the SP1 of.Net Framework 3.5 and Visual Studio 2008 not only contains bug fixes and improvements, it also contains new technologies such as ADO.Net Entity Framework v1, ADO.Net Data Services v1, ASP.Net Dynamic Data and the framework and tools support for working with SQL Server 2008 that was RTM'ed last week.

    Here are some useful download links:

    While downloading and installing the SP1 of.Net Framework 3.5 and Visual Studio 2008 you can take your time to read the posts I've written during the beta time frame:

    Overview of the Service Pack 1

    ADO.Net Entity Framework

    ADO.Net Data Services

    ADO.Net Sync Services

    SQL Server 2008 and Data Access Technologies;
Copyright © 2008 Windows Coding
Microsoft and Microsoft logo's are trademarks of Microsoft Corporation.