"...
Although Visual Basic 6.0 stores strings internally as Unicode(UTF-16) it has several limitations:
-
* Ships with ANSI only controls (Label, Textbox, etc.).
-
* Properties Window in IDE is ANSI only. Unicode strings are displayed as '????'
-
* PropertyBag automatically converts Unicode strings to ANSI.
-
* Clipboard functions are ANSI only.
-
? Menus are ANSI only.
The purpose of this tutorial is to resolve these issues and provide working VB code solutions. The level of difficulty of these solutions vary but in general require intimate knowledge of ActiveX Controls and Classes. Subclassing and API programming are a must to gain functionality that Vb does not directly support.
...
| A coworker sent me this site today. It looks to be an outstanding VB6/Unicode resource. Last having been updated October 4, 2006, you can tell it's actively getting care and feeding. To help you get a feel for all the great information available, I've reproduced the index below... Index
Tiago Pascoal - Team Foundation Server - Copying Checkin Policies between projects "After creating a Team Project in Team Foundation Server, one of the tasks that we are supposed to do is configure the checkin policies. Whilst this is not a difficult task, it easily becomes a very boring task and time consuming task (specially if you configure the code analysis rules).
It is quite common that all projects share the same (or at least a common base) code analysis rules (specially if you a company/division/department/whatever wide policy regarding code conventions).
We have developed a command line tool called Copy Checkin Policies, ..." As we (my employer) move to TFS and start using more Checkin Policies this may really come in handy... (via Larkware News - The Daily Grind 1152)
Ask the Performance Team - Basic Debugging of an Application Crash "One of our common issues is troubleshooting application crashes (for example, the Print Spooler or a third-party application). These crashes usually result in the infamous Dr. Watson error.
First, let's discuss terminology. A crash is when something experiences a fault and has no choice but to exit. In the case of an user mode process that generally means a Dr. Watson popup and application exit, and in the case of the kernel, a Bugcheck. A crash can be caused by something as simple as a value being set to zero when a function is expecting a non-zero response, or trying to access a section in memory that has either become damaged or that belongs to another process.
Determining the cause of an application crash can be very simple, or extremely complicated - depending on the failure. You can do something as simple as viewing the Dr. Watson log, or you can do a full debug. Debugging is very much an art, and a complicated one at that, so we are only going to touch on the really basic concepts in this discussion. First, let’s go the easy route.
..." I thought this was a great "Intro to Hunting Down the Crash" post... There's some information I KNOW I will need (for example when I need to hunt down a rare, and impossible to reproduce so far, print spooler crash that gets reported to me every 6 months or so...)
Mohamed Sharaf's Blog - Back to MSSecurity library again "If you have seen my previous post about the class library that I developed to encrypt text or files using symmetric encryption (Rijndael algorithm). So you would already know that it was developed using .NET Framework 1.1. I've upgraded the library to .NET Framework 2.0 and fixed a bug I discovered in the decryption methods.
I already described the methods in this library before so allow me to copy-and-paste them from my previous post
The library called MSecurityLibrary and it consists of only two classes
Encryption: does the symmetric encryption using Rijndael algorithm and a key size of 256 bits.
Hashing: hash any string with MD5 hashing algorithms
Encryption class has 11 public methods. I'll describe the main functions here. public void encryptFile(string sourceFile,string distinationFile,string password) public void encryptFile(string sourceFile,string distinationFile,byte[] key)
These two methods encrypt a file using either a password or an array of bytes as a key. ... ..." How many times have you one-off'ed a MD5 hashing function? Or encryption/decryption? Sure .Net provides the infrastructure for hashing/encryption/decryption, but there's still a good bit of work required to actually use them. Packaged as an easy to use and consume assembly (with C# source, and test application), the MSSecurityLibrary provides that simple to use security wrapper.
FeedDemon Home Page - FeedDemon 2.5 Release Notes "FeedDemon 2.5 is a free upgrade for all FeedDemon 2.x customers. Just install this version directly on top of your previous version, and your existing settings will be retained.
Top Five New Features in FeedDemon 2.5 - Synchronized news bins with shared RSS feeds - share a FeedDemon "news bin" (similar to a link blog) as an RSS feed so that others may subscribe to it. Simply copy a post from any feed into a shared news bin, and everyone subscribed to that news bin's feed will get a copy of it. You can also drag-and-drop FeedDemon browser tabs - or even hyperlinks from an external browser - into a news bin to share those links.
- Vastly improved offline support - including the ability to prefetch links and images in all unread items for offline reading.
- Completely rewritten "Popular Topics" - view the most popular topics in all the feeds you're subscribed to, alongside the topics that are popular with all NewsGator subscribers.
- Embedded video support - video objects embedded in feed items can now be securely viewed inside FeedDemon.
- "Who's linking here?" - with a single click, find out who in the blogosphere is linking to a specific post in your subscriptions.
..." My favorite pay Windows client Feed reader has rev'ed to 2.5. The upgrade for me, from 2.1, was smooth and painless...
I just received an additional Lord of the Rings Online (LOTRO) Buddy Key from Turbine. This will let the Buddy download and play LOTRO free for 10(?) days (but a credit card may still be required to create an account). I'm now giving this key away... First come, first served. Please email me at gduncan411----hotmail (email address is also on my blog page) and the first email I get, gets the key. I'll update this post once the key is gone (and gone now it is)... See you on Meneldor (I play as Dunc, Duncion, Duncili, Duncgrim and Duncric... all original names aren't they...lol :) Update #1 5/27/2007 @ 10:15AM (PDT): The key has been given away...
CodeGuru - Creating PowerShell Cmdlets in VB 2005 "...
Most custom cmdlet examples are written in C#. I suppose this is because PowerShell was written in C#, has a similar grammar, and many programmers who want to write cmdlets prefer C#. I searched the Internet extensively, but I could not find a single cmdlet written in Visual Basic. Now that I have said that, I am sure someone will send me a link to a VB cmdlet example. That said, in the remainder of this article, I will attempt to create a basic PowerShell cmdlet using Visual Basic.
..." I know I'll want/need to write a PS CmdLet one of these days and having more examples in VB (the language I program in in my dreams ;) will make it that much easier for me. Related Past Post XRef: VS2005 PowerShell VB & C# Templates (Project, Cmdlet & PSCmdlet) VS2005 (C#) PowerShell Cmdlet New Item Template
10x Software Development - The Existential Pleasures of Blogging "...
Blogging seems to me to be quintessentially a short attention span task. That's not the greatest match for my interest in software development topics. But it isn't a bad match for my interest in recreational topics. And I think I can bring myself to focus on software development in bite-size chunks, at least from time to time. Consequently I've set up two blogs, one for software development and one for everything else. This blog, 10x Software Development, will focus on leading software development practices. My other blog, Waxing Philosophical, will focus on more personal topics.
Cheers, Steve McConnell" You've read Code Complete, right? (You mean you haven't? Well I won't tell anyone... as long as you run out and get it now... ;) Well Steve's blogging now too. Not many posts yet (4), but still WELL worth adding to my bRoll. (via you've been haakced - Why Didn't Anyone Tell Me Steve McConnel Has A Blog!?) Related Past Post XRef: This Month's Reading List Code Complete, 2nd ED Home Page
PDC Blog - PDC Update "We are currently in the process of rescheduling this fall’s Professional Developer Conference. As the PDC is the definitive developer event focused on the future of the Microsoft platform, we try to align it to be in front of major platform milestones. By this fall, however, upcoming platform technologies including Windows Server 2008, SQL Server code name “Katmai,” Visual Studio code name “Orcas” and Silverlight will already be in developers’ hands and approaching launch, which is where we’ll focus our developer engagement in the near term. We will update this site when we have a new date for the PDC that is better timed with the next wave of platform technologies.
..." I was planning on PDC 2007 being my yearly required CPE related training, but now it looks like I need a backup plan... (Working at one of the Final Four US Accounting Firms, I have to go to XX hours of training each year. While sometimes it can be a pain, all in all it actually rocks because that means they have to give me money to go to training each year... ;) Time to look at some local training options. Developmentor has been a fav in the past, but I really hate my drive to it. I think there are some in-person/classroom/instructor lead (i.e. much easier to get CPE credit) training options closer to home (or in Downtown LA, where I could take the train...). Now where did I put that mailer... Related Past Post XRef: PDC 2007, October 2-5, Los Angeles
CodePlex - Team Development with Visual Studio Team Foundation Server [Beta 1 Guide Release] "Welcome to the patterns & practices Team Development with Visual Studio Team Foundation Server project site! This guide shows you how to make the most of Team Foundation Server. It starts with the end in mind, but shows you how to incrementally adopt TFS for your organization. It's a collaborative effort between patterns & practices, Team System team members, and industry experts. This guide is related to our Visual Studio Team System Guidance Project. - J.D. Meier, Jason Taylor, Alex Mackman, Prashant Bansode, Kevin Jones
...
Chapters - Introduction
- Ch 01 - Introducing the Team Environment
- Ch 02 - Team Foundation Server Architecture
- Ch 03 - Structuring Projects and Solutions
- Ch 04 - Structuring Projects and Solutions in Team Foundation Server
- Ch 05 - Defining Your Branching and Merging Strategy
- Ch 06 - Managing Source Control Dependencies in Visual Studio Team System
- Ch 07 - Team Build Explained
- Ch 08 - Setting Up Continuous Integration with Team Build
- Ch 09 - Setting Up Scheduled Builds with Team Build
- Ch 10 - Large Project Considerations
- Ch 11 - Project Management Explained
- Ch 12 - Work Items Explained
- Ch 13 – MSF Agile Projects
- Ch 14 - Process Templates Explained
- Ch 15 - Reporting Explained
- Ch 16 - Team Foundation Server Deployment
- Ch 17 - Providing Internet Access to Team Foundation Server
..." The Beta 1 Guide is a huge 360 pages of focused and detailed TFS information. After glancing through it all I can say is "wow." Even in its current Beta state, this project is must have resource for anyone using or thinking of using TFS. (via Geir Morten Allum's MS application platform hvor, hva, når, hvorfor, osv... - TFS Guide - Beta 1 tilgjengelig) [I think it's kind of funny that I have no idea what this post title says, but when I saw "TFS Guide" I focused right in on it... lol] Related Past Post XRef: Visual Studio Team System (TFS) System Guidance Codeplex Project Download Index Now Available Branching Guidance on CodePlex New Guidance in the Visual Studio Team System Guidance Project
Smashing Magazine - PDF: 70 Coding Ideas + 80 Design Tips "...
Recently we’ve published 35 Designers x 5 Questions and 70 Expert Ideas For Better CSS Coding, in which we’ve tried to cover some parts of coding and design in the web-development. Afterwards we’ve received dozens of e-mails, in which you asked us to pack both articles in .pdf-files, so they can easily be printed out for quick reference. And we’ve promised to do it. In every e-mail we’ve received.
So now it’s time to keep the promise. You can download both articles as .pdf-files, print them out and use as a handy cheat sheet for usual problems you might run into in your next projects. ..." I don't CSS NEAR enough to feel I have any competency in using it (hence why this post struck a cord with me). The next time I need to do anything CSS related, I'll have these PDF's close at hand...
Cropper Plugins - 1.1 Release "This release includes a new plugin, Send to S3, which upon capture sends your image to your S3 account and places the URL of the image on your clipboard for easy pasting into an email or img tag (if say, posting a blog entry).
Also, this release is the first release we've applied global versioning to the plugins so the plugins can be identified with the release" [Description Leached in Full] Very cool... Nice work guys. Here's a list of the current plugins; Related Past Post XRef: Cropper Plugins CodePlex Project Cropper 1.9.1 Released (Includes Vista Compatibility)
Scott Hanselman's ComputerZen.com - Programmer Intent or What you're not getting about Ruby and why it's the tits "A user named yesthatmcgurk left a comment on DotNetKicks where he/she said:
I must be a complete loser, because I can't see where Ruby is such hot shit. I'd love to read a story, "What you're not getting about Ruby and why its the tits."
Such a great comment that I had to get involved. One of the other commenters pointed to a post over on "Softies on Rails" that's really worth reading.
Note: Forgive the use of "the tits" in this context. "Slang Definition: A description of something you show great liking to, or greatly appreciate..." Usually not a work-friendly phrase, but perhaps pub-appropriate.
...
There are some fun one-liner comparisons though and some folks think that paying a:
Java:
new Date(new Date().getTime() - 20 * 60 * 1000) Ruby:
20.minutes.ago ..." I've been wondering about the hype around Ruby. Wondering if I had to make room in my brain for another programming language. Wondering just what Ruby brought to the table and exactly how it would make my life easier. Wondering why I should care... Well the above one-liner sealed it for me. That IS magic JuJu. Once .Net has production support for Ruby (i.e. when the Dynamic Language Runtime [DLR] & Ruby support ships, announced at MIX07) I'm going to give it a go. myWatchList += Ruby
you've been haacked - CodePlex To Roll Out TortoiseSVN Support "This just in. CodePlex is planning to roll out TortoiseSVN support!
A little while ago I wrote a comparison of TFS vs Subversion for Open Source projects. I’ll spare you the suspense by telling you that Subversion wins hands down, primarily because it itself is open source and is designed with open source in mind.
It turned out that there was already a work item for SVN support and it was the highest vote getter. On Friday, Jim Newkirk commented within the work item that they are adding support for TortoiseSVN. ...
...
UPDATE: It looks like the CodePlex team has created a Subversion bridge to TFS. In other words, from the outside, it looks just like Subversion so you can connect using TortoiseSVN and SVN.exe, but under the hood, it is TFS. ...." That is very cool. While I'm not a big Subversion/TortoiseSVN/etc user, it's how Microsoft and the CodePlex team responded to their users that's so cool. And not being afraid to embrace/support something "so OSS" like Subversion. I feel it shows a great commitment by MS to CodePlex and the OSS community. IMHO supporting a Subversion interface is a "hard right, over easy wrong" decision. The easy wrong would have been to blatantly/arrogantly ignore the request. An old MS might have done this (I hate to say this, but this is almost the expected MS stance, isn't it? Or it was in the past at least...). The hard right was to embrace the request and just make it happen. To understand their current and intended CodePlex audience and do what I feel was the right thing. Good job guys...
Windows Forms Documentation Updates - Client Application Services in Windows Forms: End-to-End Walkthrough Available "The Beta 1 release of Visual Studio Code Name "Orcas" includes a new feature called Client Application Services. This feature enables Windows client applications to easily access user-management services hosted by a centralized ASP.NET Web service application.
The documentation for client application services is still in progress, but we have created an end-to-end walkthrough to demonstrate the key features. This walkthrough will be used as a lab session at the upcoming TechEd 2007 conference, but if you want a sneak peek, download the attached zip file, which contains the walkthrough and sample projects in Visual Basic and C#.
..." Now that's interesting... My first thought was that Client Application Services would increase the complexity of an application and its deployment for what value? Then I started thinking (ouch, ouCH, OUCH ;)... This WOULD be cool in that you could use this to provide centralized business login services, one authentication backend for all in-house WinForm apps. And I wonder if caching will be available (think shared caching for ### WinForm apps)? And... and... and... Hum... Added to my mental keyword/watch list. (via WindowsClient.Net Feed)
I've just released and checked in the code for v 1.0.1.6 of my Blogger Backup Utility. This version was tested on my blog, backing up 2,340 posts and 294 post comments (each of the 294 files will contain all the comments for a given post. So that's not 294 comments, but that 294 posts had comments and those were backed up/saved to disk...) I'm also upgrading its status from Alpha to Beta. By Beta, I mean it works, I use it, others have used it, but there's still stuff to be done to it yet (like supporting other save formats). I considered calling this version RTM, but wanted a "it's still a beta" safety net, just in case... ;) Highlights: You can now backup "Only new posts since" date/time. Meaning you can now back up the new posts since your last backup, or posts posted between and a given date/time in the past The date/time of the newest post backed up is now stored. Making the "Only new posts since" feature that much more useful. Nuked Blogger 2.0 (Old Blogger) references/etc.  Release Notes: - Removed "Blogger 2.0 (Old Blogger)" as an option
- Added "Only new posts since" feature
- Using this to get the posts posted between now and the given date
- Changed form/control layout
- Added an initial "All Posts since last backup" type of feature
- Now the newest/latest Post's date is saved when backing up.
- The next time that blog is selected; the "Only new posts since" fields will be populated with that date/time.
- Fixed a bug in the "Safe Name" function, where it wouldn't work after creating a "0001" named file.
- So after saving a same-named post for the third time, the application would appear to freeze up.
- Stupid location of a Dim was the cause (Note to Self, Dim/initialize an incrementing variable OUTSIDE the loop ... sigh...)
- Added more reliable Comment saving.
- Added retries and cleaned up the code a little to try to make comment saving more reliable.
Related Past Post XRef: Blogger Backup 1.0.0.5 Alpha Released Blogger Backup v1.0.0.2 Alpha Release Blogger Backup v1.0.0.1 Alpha Release Blogger Backup Utility v1.0.0.0 Alpha Released Blogger Backup using the C# GData Client Library...
ISerializable - Roy Osherove's Blog - Easier Winform UI Thread Safe Methods with DynamicProxy2 and Osherove.SimpleInterception "Wouldn't it be cool if you could write something like this in your winform apps? :
[RunInUIThread] protected virtual void DoSomeUIStuff() { this.Text = "hey" }
Download the binary files from here. (here are the source files)
Inspired by Ayende's talk at devTeach where he showed using Castle Windsor, I decided to take a closer look at how to implement a UI-Thread-Safe solution for winforms, based on his talk.
..." That WOULD be cool, very cool. Much easier than the InvokeRequired/Delegate game... I want to take a good close look at this (and the Castle Windsor license [Apache 2.0]). Also when I've had more coffee, I want to take a look at the Castle Windsor project (by first reading and groking Introducing Castle - Part I and Introducing Castle - Part II) (via Christopher Steen - Link Listing - May 19, 2007)
Motley Queüe - MSMQ's Major Moving Parts, part one "In MSMQ, there are two important kinds of entities. As you might expect, they are messages and queues.
To MSMQ, a message is a bundle of properties. The thing you normally think of as being the message, the actual content, is one of those properties, known as the body. A survey of message properties would be an entire post by itself, so I'm going to leave that for later. Every message in the system is required to be associated with ("in") a queue.
..." I've been asked by non-tech's/developers in the past, "Just what IS MSMQ?" Which of course I respond with, "Um... It's a Queue Manager... thing... that hosts messages... which get routed... to... queues... thing..." (Actually I respond with a deck of cards metaphor. That a MSMQ queue is like a stack of playing cards, with each card having its own value and applications always pulling one card from the top of the deck, yada, yada, yada...) The above post does a great job IMHO of using non-uber technical terms to describe MSMQ's moving parts.
leahpeah - 1 of 2 New Projects "I decided to start two new projects. Why? Because I’m me. This one is called LA Bloggers Live! and if you live in the Los Angeles area, you can come and listen to your favorite bloggers reading their own words. I know, right? Awesome. And if you are a blogger in the Los Angeles area or visiting the LA area, you are invited to come and read, also!
Sign up at the website. ..." [Post leached almost in full] My wife says I need to try to be a little more social and get out of the house more. I don't know why... Is it bad that sometimes I don't leave the house for 10-14+ days in a stretch? I'm like our cat's... an inside human... ;) Well... um... yeah... right... Anyway, when I saw Leah's post about her new project, LA Bloggers Live!, I thought I might be able to kill a couple birds with one stone. Blogging, socializing AND leaving the house! What a deal... LOL The only problem is that I don't know if I'll have the "want to" when the day comes around. Still every journey begins with a first step...
Jason of SlickEdit emailed me the other day letting me know about their new blog, "Hello World" The SlickEdit Developer Blog. What I liked, hence why I'm blogging about it, is that this isn't a bland marketing or company/product specific blog. It feels like the posts are a view into people working at SlickEdit (i.e. like many of the Microsoft blog's). As you expect there are some SlickEdit related posts, but there seem to be as many posts that are not. Here are some recent post titles: - VSIP: Detecting code window switches in VS 2005
- do { … } while (false);
- This is me… [I think I still have my TI 99/4a. ;]
- How to Write an Effective Design Document
- What is a Power Programmer?
- Is Your Editor Working Hard Enough?
- Key Binding, Command, Menu: The Golden Triangle
Again, why am I posting about this? I guess I thought it was cool to see into the world of an ISV like SlickEdit... Subscribed.
In order to play with the updated Smart Client Software Factory I blogged yesterday I had to upgrade my installed Guidance Automation Extensions (which I previously installed when playing with Project Glidepath last month). That's when my fun started. I spent a good bit of time trying to get the Guidance Automation Extensions to uninstall. So to try to help others, I've tried to capture some steps, related information and links. Uninstall Summary: Special Note: Keep the old versions of the install Guidance Extension MSI's around. You may need these to uninstall them in the future... - Uninstall all Guidance Packages (like Project Glidepath, Smart Client Software Factory, etc) [Control Panel - Add/Remove Programs worked for me here)
- Uninstall Guidance Automation Toolkit [I didn't have this installed, so I was good]
- Uninstall Guidance Automation Extensions (GAX) [This is where my problems started]
If can't uninstall GAX, due to a "2769" error or like in my case a blank/empty dialog with no text just an ok button; - Double check to make sure you have all the Guidance packages uninstalled.
- Try launching an elevated CMD prompt, and then using the original MSI run, "msiexec /x GuidanceAutomationExtensions.msi"
- If that still doesn't work, in the same elevated CMD prompt, repair the GAX install. "msiexec /fa GuidanceAutomationExtensions.msi"
- NOW try to uninstall it via the elevated CMD prompt, "msiexec /x GuidanceAutomationExtensions.msi"
For me the repair step was the magic step. Once that was done I had no problems uninstalling GAX. Venting Note: I know that GAX/GAT are in a CTP status, and I know MS is working on this, but having to go through this much work to play with Guidance Packages is a major roadblock for me. Before I can push/roll Guidance packages at work, I'm going to need to see some easier way of rolling out new versions of GAX and Guidance packages... I can't imagine what a pain it would have been to upgrade GAX if I had had a number of Guidance packages installed (like Web Service, SCSF, etc, etc). I really like the idea and concept, but I think I'm going to go slow on Guidance stuff for a while and let it bake a bit (i.e. wait for RTM, etc). But that doesn't mean I'm not going to play with it at home though... ;) Additional Information and Links [Uninstall Log File Snip - For Search Engine Indexing] ... MSI (s) (5C!B0) [08:02:44:662]: Error 1001. DEBUG: Error 2769: Custom Action _36E5DCE7_976B_42A9_8FBB_BE543209DC4A.uninstall did not close 1 MSIHANDLEs. The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2769. The arguments are: _36E5DCE7_976B_42A9_8FBB_BE543209DC4A.uninstall, 1, Action ended 8:02:44: InstallFinalize. Return value 3. Action ended 8:02:46: INSTALL. Return value 3. Property(S): UpgradeCode = {28FA2806-320E-4482-995E-71AD04E0A2A1} Property(S): _36E5DCE7_976B_42A9_8FBB_BE543209DC4A.uninstall = /installtype=notransaction /action=uninstall /LogFile= /Host="VisualStudio" /Installer="Microsoft.Practices.RecipeFramework.VisualStudio.RecipeFrameworkInstaller, Microsoft.Practices.RecipeFramework.VisualStudio" "C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PublicAssemblies\Microsoft.Practices.RecipeFramework.dll" "C:\Users\Greg\AppData\Local\Temp\CFGADE4.tmp" ... [/Snip] Tom Hollander's blog - Guidance Automation Extensions and Guidance Automation Toolkit: February 2007 Community Technology Preview "... Installing and Uninstalling the Guidance Automation Extensions You cannot install the Guidance Automation Extensions if you already have an earlier version installed. Before uninstalling the Guidance Automation Extensions, you must first uninstall all guidance packages, including the Guidance Automation Toolkit. If the guidance packages were installed from a Microsoft Windows Installer (MSI), you can use the Add or Remove Programs tool to uninstall them. If the guidance packages were registered using the Register Guidance Package recipe in the Guidance Automation Toolkit, you should open each guidance package in Visual Studio and run the Unregister Guidance Package recipe.
If for any reason you are unable to uninstall any guidance package cleanly, you can manually remove it from the list of installed guidance packages. This list is stored in a file that is typically located in C:\Documents and Settings\All Users\Application Data\Microsoft\Recipe Framework\RecipeFramework.xml. If you open this file in a text editor, you will see a <GuidancePackage> element for each guidance package still registered. If you delete all of the <GuidancePackage> elements manually from the XML file, the Guidance Automation Extensions can be uninstalled. However, it will not remove the registry keys of those packages, so you should take this approach only as a last resort.
After all guidance packages are uninstalled, you can uninstall the Guidance Automation Extensions. You can then install a later release of the Guidance Automation Extensions and reinstall any desired guidance packages, including the Guidance Automation Toolkit.
..." Microsoft Forums - Feb 07 CTP GAT Install Fails: Can't find Microsoft.Practices.RecipeFramework.VisualStudio.RecipeFrameworkInstaller "...Try to repair the installation before try to uninstall...." Update #1 5/23/2007 @ 8:20AM (PDT): Some additional help on uninstall GAX/GAT, Re: Guidance Automation Extensions and Toolkit: June 2006 Release (via Chad Brooks Web Log - Problems removing GAT/GAX)
Microsoft Downloads - Smart Client Software Factory - May 2007 "The Smart Client Software Factory provides an integrated set of guidance that assists architects and developers in creating composite smart client applications. The software factory includes: QuickStarts, reference implementations, how to's, patterns, and Visual Studio .NET extensions." I think this time I'm going to really check this out... really...
Code Project - Custom Dialogs to Visual Studio Setup Projects "The Visual Studio setup projects that come installed as part of Visual Studio are handy for knocking out quick-and-easy installers, but they are a bit limited in scope. Two main drawbacks are: - You have only a limited number of dialogs to choose from, which can easily run out on a relatively simple install. Say, for example, that you have a need for a further set of textboxes for a piece of information that contextually belongs on its own and does not look correct if tagged onto one of the other dialogs.
- The information you can enter is limited. Have you ever needed a dialog with 5 radio buttons? What about a pick-list of options?
... Okay, some installer zealots would say that the use of scripts and .NET Installer-classes is bad ju-ju and should be avoided. Instead we should all use proper custom actions, i.e. native DLLs. However, we live in the real world, folks, and we do what we can in the limited time given to us. The problem in going with point 4 is that it is usually at the end of the project when we discover we need that extra customisation. By then, it is too late to buy new tools and get to grips with them before the product is shipped. That leaves us with a problem: how do we create that extra dialog? ..." In a perfect world I'd be using WiX, or like, to create my setups, but then again in a perfect world I would be a lotto winner and only develop the stuff I want to develop... ;) VS Setup Projects may not be uber, but they get the job done for me in many cases. I see the above Project helping me when I need "just a little more" setup juju...
ASP Alliance - Using the Adapter Pattern "Using the adapter pattern makes interfacing with a variety of differing applications much easier. This pattern is especially useful when an application must connect to multiple external applications that differ in their requirements. This article will show you how.
With a myriad of API's available in business systems, programs (like Microsoft Word), web services, etc., there are many different interfaces a developer has to understand to tie them all together into one business solution that he or she may be developing. For instance, maybe an application needs to connect to credit card service gateways to verify a customer's credit limit or to run a debit against the account. An application could connect to a health insurance provider to bill them for services provided. An application could display maps from varying map providers.
One thing that is certain with tying in various business systems is that the API's a developer uses will be different. There is not any standard interface across the industry for implementing a certain type of system, but there is good reason for you to want to do so. Uniformity in application development makes maintenance and documentation easier and makes the application design better.
However, with these varying systems, how can one tie together all of these interfaces into one common one? This is where the adapter pattern comes into play, as we will see next.
..." I've been thinking of adding an adapter like interface to a couple app's so I keyed in on this. I want to give this article another closer read...
Xceed - Xceed DataGrid for WPF updated (v1.1) "Xceed DataGrid for WPF v1.1 features enhanced sorting, grouping, and scrolling performance, as well as the ability to control whether end-users can sort, group or re-order columns, configurable item scrolling, customizable “today” label in the Calendar, the ability to create alternating styles for data rows, snappy real-time scrolling, and a custom CollectionView that provides fine-grained and efficient control over the grid’s underlying data source. ..." Xceed Releases DataGrid WPF v1.1 (Press Release) "MONTREAL, QC - May 15, 2007 — Xceed today released version 1.1 of Xceed DataGrid for WPF. In addition to significant performance improvements, new standard capabilities, and bugfixes, all for free, this version marks the introduction of advanced features available exclusively to Vanguard subscribers.
...
All registered users can take advantage of these new free features and performance enhancements, in addition to the bugfixes. Current users of version 1.0 can update their license key by visiting the Xceed DataGrid for WPF registration page. ..." The first free (registration-ware) full featured WPF datagrid has rev'ed to 1.1... This time with an upsell to a paid subscription to get additional features. Related Past Post XRef: Free Xceed DataGrid for WPF Now Available for DownloadFree WPF DataGrid from XCEED (Coming Soon)
Microsoft Research - Digital Effects for MSN Messenger "Digital Effects, a plug-in for MSN Messenger video chatting, produces special effects for video communication. While the plug-in loads, users can select 3-D costumes or other digital effects in a pop-up window, and those effects will be applied to a selected photograph. Users also can blur the background of photos to help protect privacy." [Description Leached in Full] That sounds like it might be fun to play with...
FAQ:Final release of CLR 1.x version of NetAdvantage for .NET "In the 2007 Volume 1 release, Infragistics has released new features for the NetAdvantage for .NET product for both the CLR 1.x and CLR 2.0 versions. The 2007 Volume 1 release is the final release that our NetAdvantage for .NET product will be compiled against .NET Frameworks 1.0 and 1.1. Developer Support will continue to be available for the CLR 1.x version of the product, and product maintenance is available for the published lifecycle of release date + expected date of 3 future releases (roughly one year from release date). ..." I've been seeing this from smaller component companies, the focusing on CLR2+, but seeing a major playing like Infragistics drop further development for CLR1.x, IMHO is a milestone. If they are not doing CLR1.x anymore, then what's the likelihood that others will? Oh I know it's time and I understand the move. Frankly I'm happy and impressed that they kept rolling CLR1.x stuff as long as they have. With no official Vista support for VS2003-, and the drying up of third part component support, CLR1.x app development days are numbered (LOL.. "Gee Greg, do dugh?" I have a gift for the obvious don't I? ;)
Snoop (a WPF utility) "A random utility made to simplify visual debugging of WPF applications at runtime. It's basically a collection of things that may have seemed useful at one time or another with the common goal of making it easier to track down bugs in WPF applications.
This is not an official tool, just a utility that was found useful and added to when functionality was needed. It's provided in the hopes of helping others.
... ..."
This might come in handy... (via .Net Adventures - A Spy++ like utility for WPF applications)
Saveen Reddy's blog - Bar Chart Explorations with POV-Ray "A few samples of how one could apply the ray-traced rendering goodness of the Persistence of Vision Raytracer (POV-Ray) to the task of displaying data. My goal was to create a "rich" feel to the charts using light and shadow, rather than explore alternatives to bar charts. ... "
Now that's a feature for the next version of Excel... ;) There's something about using raytracing to render business charts that really tickles my fancy. Yeah I know it's like uber-overkill, but still if you're looking to add some "punch" to your PowerPoint slides...
|