Microsoft Outlook Bounce Feature

Having used Outlook for years and years, there is one feature I've always wished was there, though it has never been a show stopper, just a nice to have.  A Bounce feature that would take an email meant for someone else and send it on to them as if it was originally sent to them.  I know, nothing that couldn't be simulated with a forward.  I've also seen some 3rd party utils out there that have functionality like that (as well as some other email clients)....I've just always been curious why Outlook has never offered that feature.  Even just a button in the toolbar to bounce the current email would be fine with me.

At a former employer, one of my last tasks for them was to write an email client that integrated with their other custom software (they didn't want to integrate their software with Outlook, but wanted to write their own package to distribute to their clients).  The functionality rivaled Outlook (it was when Outlook 98 was the current version). 

One of the extra's I added was a bounce button.  It was one of the favorite features for them and came in handy for them.  The people using the client were often small offices that would have a central email setup (like a sales email) where all emails would come into.  The software did implement rules which could filter some out to the correct users, but often it would take a human eye to determine who the email should go to.  The bounce feature worked great for the situation as the email appeared to come from the original sender and was easily replied to.

While I don't have a huge need for this feature in Outlook, unless I am missing something, it seems that this might be a nice feature to have for some people.

ClickOnce Not Working, Serving up Raw XML

OK, this has been a strange journey.  A week or so ago I ran into a problem with a smart client (1.1) I had created for a client.  To recap, the problem was since I installed the 2.0 Framework (VS2005), when clicking on the link to launch the smart client, IE would bring up the File Download dialog.  In other words,  IEExec was not seeing that the exe was a smart client and thus not launching.

Well did some more testing and it is indeed 2.0 causing the problem.  If I uninstall VS2005 and the 2.0 Framework, the 1.1 smart clients start working again, reinstall just the 2.0 framework, they no longer work.

As a further test, I tried to convert the smart client to 2.0 and use the ClickOnce technology (which is very slick by the way).  This would be a better solution anyways and wouldn't take that much to convert the program to 2.0.  Well converted it, published it to the web server and tried to launch by pointing a link to the .application file and the browser simply brings up the raw XML from that file.  IE does not even try to launch the app.

I ran the 2.0 app from the command line using

rundll32.exe dfshim.dll,ShOpenVerbApplication http://www.malachicomputer.com/test/test.application

and everything ran fine....it is just as if the link between IE and the smart client technologies is broken when 2.0 is installed.

All very strange and it seems that some people are having simliar problems so I'm not alone, although I have yet to see anyone that has found a solution.  So any insight anyone possesses would be greatly appreciated.

Smart Client, IE Brings up File Download Dialog

I developed a smart client for a customer a while back.  It's linked off of their website and has worked fine for quite some time.  I haven't worked with it for awhile, but this morning I had someone ask me a question about it so I went to fire it off to take a look and now IE is bringing up the standard download dialog.  It is happening on both of my development machines.  Program still runs fine in development. I will test on a few other machines, although it appears that it may be working fine for other people.

My initial thoughts is perhaps since I installed VS2005 on these machines that since the smart client was developed under 1.1 that perhaps the 2.0 framework is causing my some grief.

Any thoughts?

VistaDB 2.1 Released - Small Footprint Database

Yes I've yet to use this or even try a trial of this.  But the idea of a robust database with very simple deployment would come in handy for many of those small apps I create for clients.  I will try this out and see how well it works in real world usage.

And yes, this is my post to try and get a free license.  So, hopefully this will satisfy the requirements put forth by the VistaDB company.

VistaDB 2.1 database for .NET has been released
This 2.1 update includes over 60 improvements, including new support for .NET 2.0 and Visual Studio .NET 2005. VistaDB is a small-footprint, embedded SQL database alternative to Jet/Access, MSDE and SQL Server Express 2005 that enables developers to build .NET 1.1 and .NET 2.0 applications. Features SQL-92 support, small 500KB embedded footprint, free 2-User VistaDB Server for remote TCP/IP data access, royalty free distribution for both embedded and server, Copy 'n Go! deployment, managed ADO.NET Provider, data management and data migration tools. Free trial is available for download.
- Learn more about VistaDB
- Repost this to your blog and receive a FREE copy of VistaDB 2.1!

VB.NET and STAThread / MTAThread - Windows 2000

I ran into a strange issue today at a client involving a large VB.NET project.  One user on a Windows 2000 machine was having the app lockup when trying to open a SaveFileDialog.  After doing some searching, I ran across a solution for C# apps where if the app was running in MTAThread model it would occur.  Because WinXP supplies it's own message pump for it's Common Dialogs, but Win2000 does not, the solution was to make sure that [STAThread] was specified for the main function.

The odd thing is that VB.NET is setup to run as STAThread as default.  Nevertheless, I stated explicitly in the VB app to run as [STAThread] and the issue went away.  Not sure how / why the VB app got out of it's default mode, but something odd going on there that I'll have to investigate further.

So in summary if you are running a .NET app on Windows 2000 that has either:

  1. Common Dialogs hang when opening
  2. Copy / Paste throws an exception (this is the other problem I ran into)

You  may want to check the apartment threading model.

 

Sending Large Files with YouSendIt

I just found this nice free service where you can send files up to 1GB in size.  YouSendIt.com simply asks for an email address to send to, file to send and optionally the from and a message.  The recipient receives a notification email with a link to download the file.  The files stays on their servers for 7 days after which it is deleted.    They also have a secure site using HTTPS for those that need it.  Pretty handy little service.  They allow you to prepopulate the to address if you wanted to link from your website say.  They seem to make their money through advertisments on the page the recipient goes to pick up the file (although sometimes I don't seem to get an ad)

Just so I don't sound too much like an commercial for them.  I have been a bit disappointed with their support.  I emailed them twice asking about the possibility to prefill not only the recipient field but also the from, file and message through a querystring parameter and have yet to even receive an aknowledgement email, perhaps I've been too impatient, but even though this is a free service, it would be nice to recieve some sort of acknowledgement that they at least received my email.

Posting Here Again Perhaps

I may start posting here again soon, possibly cross posting between here and DevAuthority. Here is my Technorati Profile

Moving

Well I've made the jump to my new blog home. As some others here are doing I'm heading to Devauthority.com. Thanks to Dave Balzer for setting up the new community and thanks to Donny and all for hosting me the last year or so.

I am the DO!

Thanks to Eric, I couldn't resist.

What Video Game Character Are You? I am Mr Do.I am Mr Do.

I am sedentary by nature, enjoying passive entertainment, eating when the mood takes me, and playing with my food. I try to avoid conflict, but when I'm angered, I can be a devil - if you force me to fight, I will crush you. With apples. What Video Game Character Are You?

Bug / Feature Tracking Software

For some time now, I've been using OnTime from Axosoft.  And with their recent release of 2005, have been greatly impressed with this product.  As an independent is a great tool for a great price (FREE for single users) and I just read on one of their developers blogs that they are creating a new licensing scheme for small shops of 5 users or so which will be affordable for the smaller shops.  I'm not associated with Axosoft in any way...just wanted to publically say thanks for a great product.

Laptop Adventure this Morning

Well, had a bit of an adventure this morning with my laptop.  I recently (back in December) purchased a new laptop (Dell Inspiron 9200) which is a great machine in my experience and have been more than happy with it thus far.  This morning I was working when the electricity went out, no problem, the battery kicked in.  I shut down as I went to see why we lost power.  When I came back about 20 minutes later after the power had been restored, I see the laptop still had not shutdown, it was stuck trying to end some program (don't recall which at the moment).  I ended it normally and the machine shut down seemingly without problem.  I then restarted and again walked away.  15 minutes later came back to be greeted with a blue screen.  No biggie, I just rebooted again to see if it would just go away as I've seem them do from time to time.  No such luck, blue screen again.  Booted up in safe-mode, which came up OK, so I assumed that a driver had just been damaged in some way.  After a bit of digging, I figured it was my wireless card that was causing the problem.  It is a Dell 2200BG that came standard with the machine when I purchased it.  Disabled the card and booted up normally with no problem.  Removed the card from device manager and rebooted, XP detected the new hardware and reinstalled the driver, rebooted again, blue screen...arggghhhhh.  Went and downloaded new drivers from Dell (they had been an update since I received my machine).  Installed the driver, seemingly only halfway through the install, got the blue screen again.  Thinking now that perhaps the wireless card itself had been damaged in some way, I started looking for my information to contact my rep with Dell.  Meanwhile, rebooted and low and behold, the wireless now worked.

While I'm happy it's back up and running without having to have a service call into Dell, it does make me a bit nervous that not everything was installed properly even though I don't see any problems as of yet.

New Edition - Baby 4.0

Just announcing that Baby 4.0 (AKA Son 3.0) was released this past Saturday evening.  It was released 6 weeks ahead of schedule, which was a surprise to the development team which thought there was still work to be completed.  However, after a few initial hiccups, it is running quite well although it is still being watched in a closed test mode until it is sure it can run on it's own.  A note to all...this will be the final release!

My wife had our baby six weeks early.  Both wife and son are doing well.  He is still in the hospital in the ICU where he will be until he can get his weight up above 5 lbs or so.  He was born at 4lbs 11oz so he isn't that far away.  He's eating well so we hope to have him home soon. 

Still doing some work in between hospital visits.  Working on a pretty cool little smart client, but have a few simple websites I need to crank out for some other clients.  I'm taking some time off from my main client where I spend most of my week on-site, so hopefully I can catch up with some of these other small projects while I'm waiting for our son to come home.  While I tend not to blog too much, maybe I'll find some time to put some interesting or at least more relevant posts up soon.

SMTP Server not available and Mcafee

Received a lot of activity recently on an older post surrounding an exception received when trying to send email.  Thought I would summarize the information in a new post to hopefully help others out there.

The problem surrounds receiving an exception

[COMException (0x80040211): The message could not be sent to the SMTP server. The transport error code was 0x800ccc15. The server response was not available]

when trying to send an email using System.Web.Mail in the framework.  The problem is caused by having McAfee VirusScan on the server and having OnAccessScan enabled (at least it was in the discussion we were having, there may be other causes that we haven't discussed.)  Thanks to David for further confirmation and too Marcel (see last comment) for the following steps to work around the issue in McAfee VirusScan Enterprise 8.0.

- go to VirusScan Console
- Right-click Access Protection
- Click "Properties"
- Go to Port-Blocking tab
- Select Rule: "Prevent mass mailing worms from sending mail"
- Click Edit (in order to edit this rule)
- Add "aspnet_wp.exe" to the exclusion list

Other products such as Norton and other antiviral or firewall software may cause the same issue, but I'll bet the underlying issue is the same.

Hope this helps others out there.

Parsing Web Command-Line Args

I had a need to pass a parameter to a smart client exe I'm creating for a project.  Found this example, which seems to work quite nicely.  Wanted to put this on here so I can find it again in the future.

2004 Goals in Review

Took a look back at the post I made almost a year ago about my intended goals for 2004...thought I would review those and see how I did and see where I need to improve for 2005.

  • Becoming a better father and husband - Well I like to think I've done better.  I have tried and feel like I've grown closer with my family as a whole.  Also, though unexpected, my wife is due with our fourth child in early April of 2005.  So I'll have even more opportunities to improve!
  • Learn and grow in my faith - While this is a neverending process of growing stronger in my faith in Christ, I feel that I have grown stronger.
  • Growing my consulting business - Well the first half of the year was pretty tough.  Things were pretty slow here in Ohio and my existing clients didn't really need much new work, so I worked in maintenance / support mode for the first 6 months, which kept us fed, but by no means left any over for much more than just food.  Then came August, where I landed a huge contract that lasts at least until June 2005, and it looks like it will be extended past that.  And as is typically, as soon as I got busy with that contract, all kinds of other work came and now I'm so busy I don't have time for much else.  When it rain it pours (or as is the case lately in Ohio, when it snows it really snows!)
  • Form new partnerships - While this was pretty vague, the partnerships I had in mind when I originally wrote this fell through, however the partnerships I already had have grown stronger and there are a few things on the horizon that look promising.
  • Growing in my skill / knowledge of .NET - Well I've definitely achieved this.  I've been developing almost exclusively in .NET (mostly in C#, some in Vb.net) and have learned tons.  Of course my blog reading has grown leaps and bounds with the tons of wisdom that is out there (here on dotnetjunkies and elsewhere).  And of course this is a never ending process that will continue.
  • Do more posting here - Well, I've failed here.  Only a handful of posts this past year.  Seems I just never find the time to do much more than read.  I would like to say that I would improve this in 2005, but who knows.  I'll try as I would like to give back to the communities that have given me so much.

Things I was looking forward to in 2004:

  • .NET 2.0 - Well it's not out yet and I haven't found the time to do much more than read about it.  Still looking forward to that.
  • Half-Life 2.0 - My lovely wife got that for me for Christmas, so I've been spending too much time already with that.  Great game!
  • Baseball / Football seasons for my son - Well we had very successful seasons, especially in football which is my son's favorite.  This year he was our Quarterback and did a fine job and learned a lot about the game.  I learned a lot about coaching and am looking forward to next years seasons.
  • New business relationship with a released product - Well that fell through and didn't happen.  Hopefully coming up in 2005...working on stuff now.

Overall a successful year and 2005 looks to improve on that as well!

Style Inspector

This tool looks very useful.  Will have to check this one out.  Thanks to the Daily Grind for pointing this one out.

New Things

Couple new things since my last post.

  1. Started a new 9-month contract (almost a month into it now) with a large local chemical company.  They recently had some turnover in their IT department and had many, many projects on their plate that needed done.  So I'm doing  everything from development / fixing of projects (mostly .NET but still some legacy VB and Access), analysis, and from time to time may pick up a helpdesk type item when other's are stumped.  Nice to get some steady work.
  2. Child #4 has moved out of the design phase and into development.  My wife is due with our 4th in the beginning of April

TSQL Optimization

Saw this in CODE magazine. Maybe this is common knowledge, but want to make sure I don't forget it.
Appears that that using multiple SET statments to setup variables like:
SET @foo1 = 0
SET @foo2 = 0
SET @foo3 = 0
...


is slower than one SELECT like:


SELECT @foo1 = 0, @foo2 = 0, @foo3 = 0


makes sense once you understand that behind the scenes each SET statement is converted to an individual SELECT statement.

Great article, but that tidbit makes it well worth reading

Visual Time Sheet

I recently started a new long-term contract with a local company and they use Visual Time Sheet within their IT department, not so much to track hours, but to use more of a tracking of the number of "non-project" tasks that take up a big part of the day. They are using it to justify to upper-management the need for further staffing. I've downloaded the trial version and am using it to see if I benefit in my own business. Very slick yet simple software package for a nice price.

Class 9 Events

I have a client that requested I add what he called “Class 9 Events” to his application.  His description of what that is is that it basically just logs all operations done within the software.  I've tried to search to see if there are some specific requirements to implement Class 9 events, but have not been successful.  Are Class 9 Events a specific type of events or logging that has specific requirements and/or structure?

Thanks