Office 2010 Add-ins not working

We have seen a few instances where an Office 2010 Add-in stops working  and cannot be enabled even is deleted and reinstalled.

This can effect our DotNetNuke Module – Microsoft Word Editor, as it uses the Microsoft Office Add-in feature of office.

The cause of the problem lays in Microsoft (again) that have decided to make Word (and other office Add-ins) mark a plugin as “Disabled” if it is ever involved in a slow response or crash.

Good concept to stop plugins crashing word, but how they do it is so unobvious it catches many people out. The plugins are added to a “Disabled” basket, and will never again be activated unless moved from that basket. Even if the add-in is uninstalled and re-installed.

clip_image002

To fix the problem you need to remove the add-in from this list of disabled items in your office application.

It does not escape comment that Microsoft Word remains the only application I know of that has a crash recovery system built into it. Rather than fix the problems that cause it to crash, they built a system to recover after crashes.

Since Word 2000, you can take an INDEX and regenerate it, then fast scroll on the newly created index to crash the entire application. 10 Years of development, and all I can see is tweaks around the edges. No wonder the company is on a massive down hill slide! “Microsoft – Taking the fun out of computing”.

Solution to – Windows 7 Slows with Thumbnail Previews of Images

Windows 7 Slow to Thumbnail Preview – Solution

We have found for the problem that we have experienced significantly with Windows 7. The problem is found when viewing in Thumbnail Preview a directory with a lot of image files in it.

Like you would a directory of icon images used in a graphic design company, or even a general user with a lot of images in your folder.

What happens is that the system stalls and chokes while a green progress bar slides from left to right taking anything up to 40 seconds to complete.

image

While the thumbnails are not displayed, but the default icon is in place while the computer has a good old think about that it will do next.

Strangely enough, this was something that worked well on the Microsoft Windows India (AKA Vista). Some how the US boys broke the thing when they took the code back from the Indians to pump out Vista (Rebranded Windows 7).

You can see where I am going with this… or at least can tell that I am completely fed up with the fact that massive computer system running a RAID Stripe with 3 of the fastest hard disks on the market, struggles to generate thumbnails from a file that the operating system has already created and hidden.

When my old iPhone 3 generates icons as fast as I can view them.

So that got me thinking how I can fix this.

Got me thinking back to solutions from Windows 95 days. There were thumbnail generating programs back then that worked faster than Windows 7.

Even had me thinking about breaking things apart into folders with less files in it.

But then it came to me….

The fix.

I am a proud mac owner. What the hell am I busting my hump trying to work out how to fix a problem that Microsoft created and never fixed since the release of Windows 7. I should stop thinking like a Windows Server Administrator and think like a user.

So User… what you going to do.

1. You already have Drop Box syncing the files since Microsoft Killed the pleasure you once had with Folder Share / Live Sync / (Some Busted Ass junk that no longer works since MS purchased Folder Share).

2. The directory is already on the mac, because Drop Box just works!

3. Just surf the images on the Mac.

What a pleasure. The experience was so good, that I just played with it fir 10 min or so, seeing how fast I could scroll and see if it could keep up. It could.

I went from this:

image

to this:

Screen shot 2011-02-22 at 12.58.54 AM

Solution found!  (I had to write this because it ticks me off so much that the basic features of Windows Still don’t work after soooo long!)

Thumbnail Generation is just one of many.

Cannot Browse Microsoft Sites or Antivirus Sites Cornflicker is your problem

Conflicker VirusWow.. it has been some time since I danced the Antivirus Windows dance, but today I had an experience that a lot of you may know about.

A re-install of a server and I wanted to throw onto it Windows 2008 R2. Problem was that the server only has a CD drive.

So I look at what ISO’s I can lay my hands on that are CD install. I found that Windows 2000 SP2 was it for server software.

While I probably could have assed around trying to find some other way to load up a new operating system via network or USB etc. But since I started using Apple products a year or two ago, I value life… and so was not prepared to throw time away with Microsoft on that little journey.

So up goes the virgin 2003 SP2 server.

Assed around with some new network drivers… and I was done.

Only problem… no connectivity to Microsoft. Some more of my life gone, and I work out that the brand new server has been infected with Cornflicker virus. Fancy that… A new server with no action on it, and it already has a virus.

I should point out that the server was on a network with a few hundred computers and lightning fast access to the internet.

Who knows where it got it from, but I was flabbergasted to see this happen quite this easily. Anyway the removal was somewhat of a pain, as I tried a few things before I managed to get rid of it.

Because the virus stops access to Microsoft. Most of the download links for the Microsoft solutions were a total waste of time.

It begs the questions why they don’t publish what you need at locations that are non Microsoft.com and that change often to fool the virus. Anyway!

Other virus programs would remove the threat, only to find it was back again instantly on reboot.

So I found that you needed to patch the server with Security Update for Windows Server 2003 (KB958644)

And then run the Microsoft® Windows® Malicious Software Removal Tool

Ensuring that you do the full scan.

After a reboot with the patch, the thing was gone and the server could be patched.

I found it easiest to download these two file from another location and install onto the server from a share.

Apple Time Capsule Flashing Amber

Today I noticed an amber light flashing on my time capsule. Normally I would just rip a power cord out of a device like this and power up again.

Today was different. I was having so much fun making my first iPhone app on my mac, I bothered to stop and think… when was the last time something Apple just funked out for no reason (try never). So I jumped Google for a first hit response.

  • Time Capsule Flashing Amber =
  • Could be there is a software upgrade available for the time capsule.

How do you check?

Applications –> Utilities –> Airport Utility, you’ll see this:

apple time capsule airport utility 1

 

Click the update button and you are done. Go Mac!

crtsrv HTTP Error 500.19 – Internal Server Error 64 Bit Windows 2008

When accessing the newly configured /CRTSRV service on a windows 2008 server, we were thrown the following error.

HTTP Error 500.19 – Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid.

Module CustomErrorModule
Notification SendResponse
Handler Not yet determined
Error Code 0×80070003
Config Error Cannot read configuration file 
Config File \\?\C:\Windows\system32\CertSrv\en-US\web.config
Requested URL
http://localhost:80/certsrv/certfnsh.asp
Physical Path C:\Windows\system32\CertSrv\en-US\certfnsh.asp
Logon Method Not yet determined
Logon User Not yet determined

Browsing to the directory showed that:

Config File \\?\C:\Windows\system32\CertSrv\en-US\web.config

File is missing or does not exist.

This was somewhat frustrating because it was a fresh instance of Windows 2008 server and the service had just been added and configured without error.

The long and short of it all for us was that it related to the fact that the server was a 64 bit server, and in IIS by default, 32 bit applications are enabled.

To fix the problem we started IIS.

Browsed to the Application Pools and ensured that the application pool for the CRTSRV service had “Enable 32-Bit Applications” set to False

image

This made the site come alive!

(Can’t help but comment how sucky it is that this does not just work out of the box. Even if I cut MS some slack and acknowledge how many variables are in place for this type of configuration, it still SUCKS that the status error code thrown is as good as meaningless! – This is why I hate MS more and more every day!)

DotNetNuke Email Setup and Maps

Monday, October 18, 2010

Lee SykesInterview with:Lee Sykes
David Finleyand David Finley

In this podcast we discuss how to correctly set up email in DotNetNuke and understanding SMTP and the common traps to avoid. We also look at working with maps and map modules in DotNetNuke and the powerful uses for Google Maps and Google Earth.

The podcast covers the following:

  • Email Setup
  • Typical email problems in DotNetNuke
  • What is SMTP?
  • SMTP mail servers
  • How you would typically experience SMTP servers outside of DNN
  • What is POP3 / Exchange / Webmail?
  • What traps are there with SMTP servers?
    • Relay
    • IP lockdown
    • Send Limits
    • No relay
    • Domain lockdown
    • SSL
    • Ports and restrictions
  • How does Google and Hotmail play with this?
  • What do you need to know to configure SMTP in DNN?
  • How to configure SMTP in DNN
  • Traps with SMTP in DNN
  • Admin email address
  • Locked domain
  • External domain limits or blocks
  • Administrator email settings configuration
  • Maps in DotNetNuke
  • Introduction to Google Maps
  • How maps can be useful for data research
  • How maps can be useful for business and sales teams
  • Map modules in DotNetNuke
  • GeoSprawl DotNetNuke Locator module
  • ZLDNN Advanced Biz Map module
  • Google Earth
  • Business data analysis
  • Data mapped to suburbs
  • Tally of all people in suburbs and 3D chart developed
  • Immediately could see where largest registered number of users were on the map
  • Telco provider able to plot footprint of tower and users
  • Enables tracking of where next towers need to be built
  • Locations of handsets at various times of days

If there are any subjects you would like us to discuss in the podcast please submit your request in the Podcasts section of the DNN Creative Forum.

Understanding SMTP in DotNetNuke

DNN SMTP Settings

DNN Websites have the ability to configure in the host settings an SMTP server. When a DNN email is generated from the DNN website, it will attempt to send mail through this SMTP server.

In order that your DNN website can successfully send the email, the SMTP server must allow the email message to be received. Typically this is done in one of four ways.

  1. The SMTP server is configured for Open Relay (This should NEVER be done unless you have an external firewall blocking all external SMTP connections. Otherwise your mail server will become a spam server within hours)

  2. SMTP Authentication – Typically SMTP servers are configured to allow users with a valid username and password to authenticate themselves. Once they have been authenticated, they can communicate email messages through the SMTP server. This is the same way most ISP’s work their mail servers. The idea is that only users who are customers of the ISP will allow email to be sent from their SMTP servers.

  3. Selective Open Relay. The administrator of the SMTP server can also allow Open Relay (same as 1 above) from selective IP addresses. Any communication from an IP address that is configured to allow open relay will be accepted by the SMTP server.

  4. Local Host – If your website has it’s own SMTP server configured, typically it will allow email message to be sent form it’s self.

To correctly configure your DNN SMTP settings, you need to understand what method of communication has been configured in the SMTP server you are trying to set DNN to access.

Here is the process you would configure from above.

  1. Enter the IP address or valid domain name for the SMTP server, nothing more to do if open relay is allowed. (Still not recommended)

  2. Enter the IP address or valid domain name for the SMTP server, and the valid user name and password as would be used to communicate with the SMTP server. This is where you get to use the user name and password setting in DNN.

  3. Ensure that the SMTP administrator has allowed the IP address your DNN website uses to have open relay status. Then just enter the IP address or domain name of the SMTP server in your DNN host settings.

  4. Configure your DNN host settings to have “localhost” in the DNN SMTP server settings are.

Problems.
There can be some issues that get confusing with the different methods.

  1. Open relay mail servers will be attacked by spammers very quickly. They are always on the lookout for mail servers that they can abuse. It is never recommended to have your mail server on the internet and in open relay. Additionally your mail server will be blacklisted by other mail servers if found to be in open relay.

  2. SMTP Authentication  can still be restricted to certain IP addresses. Many ISP’s will allow you only to use their mail servers while you are a client of their AND connecting to their mail server from an IP address they own. So thing will work in your Email applications while you are connecting to the internet via their dialup or high speed connection, but as soon as you move away from a connection provided by them, you will not be allows to connect to their servers, let alone Authenticate.

  3. Even if your ISP has allowed relay from the address that your mail server is run form, there may be a firewall or block on the normal port that the SMTP servers are typically configured to use. Port 25. If a firewall exists between your web server and the mail server, it must be configured to allow traffic over port 25.

  4. You may have web server configured with an SMTP server on the same system. Yet have it be blocked over port 25 for outbound communications. Some ISP’s block port 25 to curb the flow of virus email messages. You need to be sure that your ISP that provides connection to the internet for your web and SMTP server is not blocking port 25.

How to get really confused.
Often mail servers will allow you to send email messages to email addresses on that SMTP server, even though they do not allow you to send mail out. So if you have a web application configured to send email to yourself, and the SMTP settings you use in the DNN host settings are for the SMTP server that runs the same email address you will have success.
Yet when you change the email address in the web application, you can no longer send email, and the web application appears to fail. This is still an SMTP configuration error on your website. You will need to find a method above to solve the issue.

Email Limits for web hosting providers

Mail server SMTP email send (rate) limit for popular web hosting providers

dots Why do you need to know your web host’s SMTP email rate limit

If you run a web site and you plan to send out mass emails (for example, a newsletter), it is advisable to send the emails using an authenticated SMTP mail server that matches the nameserver records for your own domain name. This way, your outgoing emails will not trigger anti-spam filters set to identify phishing emails or spammers. For example, if you run a web site at www.my-web-site.com, our advice is to send the emails from a SMTP server name that resolves to the same domain name (like smtp.my-web-site.com).
However, to prevent spam, many web host providers enforce email send rate limits to their customers. The goal of this article is to show you the email send rate limit and options for most popular web host providers, such as GoDaddy, FastServers, HostWay, RackSpace, iPowerWeb and more.

dots Web Hosting Providers – SMTP limit and email rate limits

Important note: Please do NOT take this information for granted, as your host provider can change its mail server policy without any prior notification. It is always a good idea to contact your host provider and ask about the email send rate, before proceeding with a mass email campaign.

  • GoDaddy Email Send Rate Limit & SMTP Restrictions
    The following restrictions apply when sending emails from a web site / domain hosted by GoDaddy:
      GoDaddy email send limit for shared web hosting – no more than 250 relays (recipients) per day. You can purchase additional relays, in packs of 50
      GoDaddy email send limit for dedicated servers or dedicated virtual servers – no more than 1000 relays (recipients) per day.
      GoDaddy other SMTP limits – outgoing messages sent via GoDaddy can not exceed 30Mb per email (including attachments)
      GoDaddy SMTP restriction expiry method – the restriction is automatically lifted 24 hours after the email send limit was reached.
  • APlus Email Send Rate Limit & SMTP Restrictions
    The following restrictions apply when sending emails from a web site / domain hosted by APlus.net:
      APlus email send limit for shared web hosting – no more than 1000 recipients per mailing list AND no more than 500 emails per 30 minutes.
      APlus other SMTP limits – max 7Mb for web email or max 20Mb for local email client messages
      APlus SMTP restriction expiry method – N/A
  • RackSpace Email Send Rate Limit & SMTP Restrictions
    RackSpace.com apparently has no email rate limit, however all outgoing messages must be compliant with theRackSpace Acceptable Use Policy. Rackspace may test and otherwise monitor your compliance with its requirements, and may block the transmission of e-mail that violates these provisions.
  • HostWay Email Send Rate Limit & SMTP Restrictions
    HostWay allows customers to send emails to mailing lists, using the MailMan service. The number of mailing list subscribers depend on your hosting plan. Using a MailMan mailing list for spamming can lead to the termination of your web hosting account.
  • Homestead Email Send Rate Limit & SMTP Restrictions
    The following restrictions apply when sending emails from a web site / domain hosted by Homestead:
      Homestead email send limit for web hosting – no more than 10 messages per second. All mass emails must be compliant with the Homestead Mass Mailing Policy.
  • IPowerWeb Email Send Rate Limit
    The following restrictions apply when sending emails from a web site / domain hosted by IPowerWeb:
      IPowerWeb email send limit – no more than 200 emails per hour and 600 emails per day (for newly created account) OR no more than 500 emails per hour and 5000 emails per day.
      IPowerWeb other SMTP limits – outgoing messages sent via IPowerWeb can not exceed 25Mb per email, including attachments. Mailing lists should not exceed 200 recipients.
  • Bluehost Email Send Rate Limit & SMTP Restrictions
    The following restrictions apply when sending emails from a web site / domain hosted by Bluehost:
      Bluehost email send rate limit – the default limit is set to 50 emails per hour. The limit may be raised by contacting the Bluehost support team and explaining why you need the send email limit to be lifted
      Bluehost other SMTP limits – outgoing messages sent via Bluehost can not exceed 10Mb per email (including attachments)

    * The HostMonster email policy is identical with the one of Bluehost.

  • LunarPages Email Send Rate Limit & SMTP Restrictions
    The following restrictions apply when sending emails from a web site / domain hosted by LunarPages:
      LunarPages email send rate limit for shared hosting plans – max 20 emails per minute, 600 emails per hour and 14400 emails per day
      LunarPages email send rate limit for dedicated server plans – no limit (according to the LunarPages support forum)
  • 1and1 (1&1) Email Send Rate Limit & SMTP Restrictions
    The following restrictions apply when sending emails from a web site / domain hosted by 1and1:
      1and1 email send rate limit – max 99 emails at once
      1and1 Other SMTP restrictions – each outgoing message must have less than 50Mb (including attachments)
  • Send email rate limit for webmail providers – Gmail, Yahoo! Mail, Hotmail, AOL, Lycos Mail

    dots Sending mass emails from webmail email accounts

    Most webmail emai account providers, such as Yahoo! Mail or Google Gmail, allow users to send email by using the webmail browser interface or by using a SMTP connection with the email account SMTP server. No matter the way you send the emails (web interface or email client software), you must be aware of the "rate limit" (the limit for sending emails) established by your email account provider.

    dots Web Email Account Providers – email rate limits and SMTP limit

    Important note: Please do NOT take this information for granted, as your email account provider can change its email policy without any prior notification. It is always a good idea to contact your email account provider and ask about the email send rate, before proceeding with a mass email campaign.

  • Google Gmail Email Send Rate Limit & Restrictions
    The following restrictions apply when sending emails from a Google Gmail account:
      Gmail email send limit – no more than 500 recipients per message for the Gmail web interface, or max 100 recipients if you are using an email client software.
      Gmail other SMTP limits – outgoing messages sent via Google Gmail can not exceed 10Mb per email (including attachments)
      Google Mail SMTP restriction expiry method – the restriction is automatically removed within 24 hours after the limit was reached.
  • MSN Hotmail Email Send Rate Limit & Restrictions
    The following restrictions apply when sending emails from a Hotmail account:
      Hotmail email send limit – no more than 100 recipients per day.
      Hotmail other SMTP limits – outgoing messages sent via Hotmail can not exceed 10Mb per email (including attachments)
  • Yahoo Mail – Email Send Rate Limits & Other Email Restrictions
    The following restrictions apply when sending emails from a Yahoo Mail account:
      Yahoo Mail email send limit – no more than 100 emails or recipients per hour
      Yahoo Mail other SMTP limits – max 10Mb per message for the free Yahoo Mail Service, or 20Mb per message for Yahoo! Mail Plus
      Yahoo Mail SMTP restriction expiry method – N/A
  • Lycos Mail – Email Send Limits & Restrictions
    The following restrictions apply when sending emails from a Lycos Mail account:
      Lycos Mail email send limit – max 25 recipients per message and max 250 emails per day
      Lycos Mail other SMTP limits – Lycos Mail does not have a limit to the attachment file size at this time.
  • AOL Email Send (Rate) Limits
    AOL imposes a rate limit on an AOL member when a member exceeds the acceptable number of email messages sent in a given time period. The following restrictions apply when sending emails from an AOL connection:
      AOL email send limit – no more than 100 recipients per message or 500 recipients per connection
      AOL other SMTP limits – max 16mb per message
      AOL SMTP restriction expiry method – N/A
  • How do I get the pivot server application to run on IIS 6

    This is an extract from our DNN Pivot Module manual.
    Special Requirements IIS 6 (Windows 2000, 2003 Server)

    If you are running II6 and wish to access the Microsoft Pivot Labs technology, you will need to enable some special configurations. To do this:

    1. Login to your web server and start IIS

    2. Browse to your Web Site or Virtual Directory for the website in question and Rick Click selecting Properties.

    image

    3. Select the Home Directory Tab / Configuration

    image

    4. On the Mappings Tab, select Add

    image

    5. The following data depends on what type of server you are running. 64 bit vs 32 bit, and if you have .net 4 installed or not. The only thing that changes is the path for the .dll file.

    Add the following data: 64 Bit server with .Net 4 installed

    - Executable: C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll
    Extension: .cxml
    Limit to: GET
    Script engine: checked
    Verify that file exists: unchecked
    image

    this gives you something like this above. Click OK and repeat the process for the following extensions:

    - Executable: C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll
    Extension: .dzc
    Limit to: GET
    Script engine: checked
    Verify that file exists: unchecked

    - Executable: C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll

    Extension: .dzi
    Limit to: GET
    Script engine: checked
    Verify that file exists: unchecked

    - Executable: C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll

    Extension: .jpg
    Limit to: GET
    Script engine: checked
    Verify that file exists: unchecked

    Add the following data: 34 Bit server without .Net 4 installed

    Not that the location of the four extensions described above will change, depending on your server status. As an example of the change for a 32 bit server without .Net 4 installed the location would change

    From

    C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\

    To

    c:\windows\microsoft.net\framework\v2.0.50727\

    So the location of the first file in the example above would be:

    c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll
    still giving a setup that looks the same but with a different path
    image

    You can browse to your servers .net path (C:\WINDOWS\Microsoft.NET\Framework) to work out the location of the aspnet_isapi.dll file.

    image

    Symantec EndPoint Protection Manager

    I find it very annoying that the Symantec EndPoint protection manager application makes you select a new password from time to time. And.. you cannot use the same password as previously used.

    image

    I will never understand why it was not configured to use the logged in user authentication. But in any case, it can lead to a person forgetting the pass they set. The solution to this is very easy, and makes the whole point of being required to change passwords an absolute joke.

    To use Resetpass.bat:

    1. Open Windows Explorer on the computer where you run Symantec Endpoint Protection Manager.
    2. Change directory to the <Drive>:\Program Files\Symantec\Symantec Endpoint Protection Manager\Tools folder.
    3. Double-click the Resetpass.bat executable file. The password is reset to the default password. (admin / admin)
    4. Be sure to change the password immediately.

    Part 5: File System stuff and path to Documents directory – A .net developer learns objective-c for iPhone iPad

    Some quick info for the file system on the iOS.

    Documents – persists data and is backed up when you connect itunes.

    tmp – used for your temp app stuff. Not to persist data and you should clean up that directory whenever possible by your app.

    Library/Caches – persists app specific data between launches of the app. Not backed up.

    Library/Preferences – app specific preference settings data (but use CFPreferences API), Gets backed up.

    More info at apple’s site here.

     

    Quickly get the path to your Documents directory here:

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    
    // get a file called foo.xml
    
    NSString *filePath = [documentsDirectory stringByAppendingPathComponent:@”foo.xml”];

    Getting the tmp directory is a bit easier:

    NSString *tmpDir = NSTemporaryDirectory();

    IIS 7 WordPress permissions Could not create Temporary file

    When hosting wordpress on iis 7, the ability to upload images from blog post tools like Live Writer and the ability to automatically update plugins is controlled by the permissions set both within IIS and within the directory structure that IIS accesses. The account that holds the key to the success is the “Users” account, unlike other versions of IIS.

    iPhone 4 Comes in two colors white or black $199 for 16 GB, 299 for 32 GB

    Thanks to http://www.engadget.com for a rocking cast of WWDC 2010

    "Pricing — there’s two colors. White and black. Pricing — $199 for 16GB, $299 for 32GB."

    On sale 24th July 2010

    "So what’s our lineup look like? 3GS is now $99. These go on sale June 24th."

    "Pre-orders start a week from tomorrow. And we’re shipping in 5 countries. In July we’re shipping in 18 more."

    iPhone 4 has Video Call – Announced WWDC 2010

    Thanks to http://www.engadget.com

    "So in 2007 when we launched the iPhone, it was my privilege to make a call to Jony Ive… and I’m going to do the same thing now." Boom, video call.

     

    Now the iPhone 4G running on the iOS4 has built in video call

    “You know I grew up with the Jetsons… and video calls… and now it’s real. What about you?" Jony: "I grew up with the same thing, and it’s real now!" Steve: "It is real… especially when people turn off their WiFi." Jony: "We’ve had to wait an awful long time for this to become reality." Steve: "Okay, let’s have lunch soon."

    It’s called FaceTime. WiFi only. iPhone 4 to iPhone 4. No setup.

    11:38AM Wow — very cool. Two people speaking in sign language on the phone. We’re getting a little choked up! That’s a pretty cool use.

    11:38AM Wow. You can flip the image to the rear camera. This commercial is pretty intense.

    Setup is unable to proceed due to the following error(s):

    Setup is unable to proceed due to the following error(s):
    Microsoft Office 2010 does not support upgrading from a pre-release version of Microsoft Office 2010.  You must first uninstall any pre-release versions of Microsoft Office 2010 products and associated technologies.
    Correct the issue(s) listed above and re-run setup.

     

    My Office 2010 Beta wows

    I had promised myself that I would never again touch a Microsoft Beta program for anything other than a virtual machine test environment. I promised this after the Internet Explorer 6 darkle (I still find beta versions popping up that cannot be uninstalled).

    I promised myself after Vista Beta’s that required a full system install to live.

    I promised myself after CRM 4 Beta’s that cost me hundreds of development hours…

    And here I am again tackling another Beta stuff up with the RTM version of office 2010 upgrading from Beta public preview.

    I just hope they got all of my :( (unhappy faces) from their send a smile tool. Anyway to fix this error…

    Before I could install office 2010 RTM I needed to uninstall all previous versions of office. This surprisingly included an RTM version of Visio 2010. This has nothing to do with any beta programs and turned out the be the culprit in throwing the above error.

    Once I removed all 2007 and all 2010 versions of office, including other RTM versions, I could proceed with install.

    Go figure! 

    Digg This

    The property value is invalid. The value can’t contain leading or trailing whitespace.

    I have encountered this problem while setting up Microsoft exchange 2010. After jumping through all of the appropriate hoops, the installation process stops with an area that looks something like this:

    Organization Preparation
    Failed

    Error:
    The following error was generated when “$error.Clear(); $acceptedDomains = @{}; Get-AcceptedDomain | foreach { $domainName = $_.DomainName.ToString(); if ($acceptedDomains.Contains($domainName)) { Write-ExchangeSetupLog -Warning “Duplicate AcceptedDomain found. ‘$($acceptedDomains[$domainName])’ and ‘$($_.Name)’ both reference domain ‘$domainName’”; } else { $acceptedDomains.Add($domainName, $_.Name); }; }; function getSmtpTemplates ([string]$property) { $input | Select-Object -ExpandProperty $property | Where-Object {$_.PrefixString -eq “SMTP”} | Foreach-Object {$_.AddressTemplateString -replace “.*@”, “”}; } function addDomains ([Microsoft.Exchange.Data.Directory.SystemConfiguration.AcceptedDomainType]$domainType) { $domain = $null; $input | Where-Object {-not $acceptedDomains.ContainsKey($_)} | Where-Object {[Microsoft.Exchange.Data.SmtpDomainWithSubdomains]::TryParse($_, [ref] $domain)} | Foreach-Object { $name = $domain.ToString(); if ($name.Length -gt 64) { $name = $name.Substring(0, 64) }; if ($acceptedDomains.ContainsValue($name) ) {$name = [System.Guid]::NewGuid().ToString()}; new-AcceptedDomain -Name:$name -DomainName:$domain -DomainType:$domainType; $acceptedDomains[$domain.ToString()] = $name; }; } $emailAddressPolicies = Get-EmailAddressPolicy; $emailAddressPolicies | getSmtpTemplates “NonAuthoritativeDomains” | addDomains “InternalRelay”; $emailAddressPolicies | getSmtpTemplates “EnabledEmailAddressTemplates” | addDomains “Authoritative”;” was run: “The property value is invalid. The value can’t contain leading or trailing whitespace. Property Name: Name”.

    The property value is invalid. The value can’t contain leading or trailing whitespace. Property Name: Name

    Now the interesting thing is that the error was repeated the exact number of recipient policies that existed in the exchange server 2003 running on the same domain. This indicated to me (now in correctly I understand) that each of the recipient policies had an invalid whitespace either before or after the policy name.

    I really scratched my head a lot trying to resolve this, as I found there was not so much in the way of assistance available to the error that is given by exchange 2010.

    That being: “The property value is invalid. The value can’t contain leading or trailing whitespace.”

    So after exhausting all of my resources I installing exchange server 2007 service Pack 1. This area and with a slightly different error: “The Name property contains leading or trailing whitespace, which must be removed”

    research on this led me fairly quickly to the following article: http://technet.microsoft.com/en-us/library/dd233089.aspx

  • Start the ADSI Edit tool, and then connect to the Configuration container. To do this, follow these steps:
    1. On a server, click Start, click Run, type adsiedit.msc, and then click OK.
    2. In the navigation pane, click ADSI Edit.
    3. On the Action menu, click Connect to.
    4. Click Select a well known Naming Context if this entry is not already selected.
    5. In the Select a well known Naming Context list, click Configuration, and then click OK.
  • Expand the following nodes:
    • Configuration [<domainController>.contoso.com]
    • CN=Configuration,DC=contoso,DC=com
    • CN=Services
    • CN=Microsoft Exchange
    • CN=<OrganizationName>
  • Under CN=<OrganizationName>, click CN=Recipient Policies.
  • In the details pane, examine the recipient policy DNs to locate any entries that resemble the following:
    CN=<policy name>\,CN=Recipient Policies,CN=<OrganizationName>,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=contoso,DC=com
  • Note whether any DNs appear together with a backslash character (\) or if any leading or trailing white spaces appear in the DN. A backslash character is used to “escape” the white-space character.
  • Use the Exchange Management Console to remove any white spaces from the recipient policy name. To do this, follow these steps:
    1. In the Exchange Management Console, expand Organization Configuration, and then click Hub Transport.
    2. Click the E-mail Address Policies tab, right-click the appropriate policy, and then click Edit.
    3. Delete any leading or trailing white spaces from the policy name, and then finish modifying the policy.

    What all of this is saying is that if you drill down to: configuration, CN services, first organisation, recipient policies. You will see a list of all of the recipient policies were the server. In the list on the far right is a column called a distinguished names. Hunt very carefully within all of the darter under the distinguished names column and look very closely for a backslash “\”

    Note the recipient policy that the backslash is found on, and go to the exchange system manager and in the recipient policies edit the associated recipient policy to remove the space which the backslash represents that she found in the step above.

    Once you have edited or all of the recipient policies that have a backslash in them to remove the associated whitespace or blank space you will find the exchange server 2010 will install successfully. And for that matter I expect that exchange server 2007 would install just as easily.

    You really do have to love the Microsoft installation process, that can fail with an error that is completely meaningless, but still seven lines deep a completely random useless code that does everything except tell you the associated recipient policy that is in error. Microsoft I wish you could feel our pain!

  • Hope you find this helpful. Please see more at: http://www.interactivewebs.com

    Digg This

    MS CRM Rollup 8 and 9 fail with Invalid length parameter passed to the LEFT or SUBSTRING function.

    While installing MS CRM Rollup 8 or MS CRM rollup 9, we received an error that looked like this:

    —————————
    Microsoft Dynamics CRM 4.0 Update Rollup 9
    —————————
    Action Microsoft.Crm.Setup.Common.Update.DBUpdateAction failed.

    Invalid length parameter passed to the LEFT or SUBSTRING function.

    Cannot insert the value NULL into column ‘InvoiceNumber’, table ‘sdia_MSCRM.dbo.InvoiceBase’; column does not allow nulls. UPDATE fails.

    Invalid length parameter passed to the LEFT or SUBSTRING function.

    Cannot insert the value NULL into column ‘InvoiceNumber’, table ‘sdia_MSCRM.dbo.InvoiceBase’; column does not allow nulls. UPDATE fails.

    Invalid length parameter passed to the LEFT or SUBSTRING function.

    Cannot insert the value NULL into column ‘InvoiceNumber’, table ‘sdia_MSCRM.dbo.InvoiceBase’; column does not allow nulls. UPDATE fails.

    Invalid length parameter passed to the LEFT or SUBSTRING function.

    Cannot insert the value NULL into column ‘InvoiceNumber’, table ‘sdia_MSCRM.dbo.InvoiceBase’; column does not allow nulls. UPDATE fails.

    Invalid length parameter passed to the LEFT or SUBSTRING function.

    Cannot insert the value NULL into column ‘InvoiceNumber’, table ‘sdia_MSCRM.dbo.InvoiceBase’; column does not allow nulls. UPDATE fails.

    Invalid length parameter passed to the LEFT or SUBSTRING function.

    Cannot insert the value NULL into column ‘InvoiceNumber’, table ‘sdia_MSCRM.dbo.InvoiceBase’; column does not allow nulls. UPDATE fails.

    Invalid length parameter passed to the LEFT or SUBSTRING function.

    Cannot insert the value NULL into column ‘InvoiceNumber’, table ‘sdia_MSCRM.dbo.InvoiceBase’; column does not allow nulls. UPDATE fails.

    Invalid length parameter passed to the LEFT or SUBSTRING function.

    Cannot insert the value NULL into column ‘InvoiceNumber’, table ‘sdia_MSCRM.dbo.InvoiceBase’; column does not allow nulls. UPDATE fails.

    Invalid length parameter passed to the LEFT or SUBSTRING function.

    Cannot insert the value NULL into column ‘InvoiceNumber’, table ‘sdia_MSCRM.dbo.InvoiceBase’; column does not allow nulls. UPDATE fails.

    Invalid length parameter passed to the LEFT or SUBSTRING function.

    Cannot insert the value NULL into column ‘InvoiceNumber’, table ‘sdia_MSCRM.dbo.InvoiceBase’; column does not allow nulls. UPDATE fails.

    Invalid length parameter passed to the LEFT or SUBSTRING function.

    Cannot insert the value NULL into column ‘InvoiceNumber’, table ‘sdia_MSCRM.dbo.InvoiceBase’; column does not allow nulls. UPDATE fails.

    The statement has been terminated.

    The statement has been terminated.

    The statement has been terminated.

    The statement has been terminated.

    The statement has been terminated.

    The statement has been terminated.

    The statement has been terminated.

    The statement has been terminated.

    The statement has been terminated.

    The statement has been terminated.

    The statement has been terminated.

    —————————
    Retry   Cancel  
    —————————

    It turns out this error is caused by an invoice having an invalid invoice number. By default, MS CRM gives invoices numbers that look something like this: INV-06881-39HRRD

    In our CRM project, we had some invoice number formats being inserted manually by a remote Events Booking system we have written for the web (cool application actually). This used slightly different format invoice numbers intentionally. The solution to the problem was to either remove or renumber in the same format the invoice records. Once your invoice numbers are all as CRM expects them, then you can install either or both updates.

    This is a SQL script that may help:

    
    
    Execute this SQL script to generate correct invoice number, specifying
    
    correct length for your invoice number format
    
    
    
    (verify in your CRM parameters Automatic Numbering for invoice):
    
    @InvoiceNumberPref = 'INV'
    
    @invoicePART1Len = 5
    
    @invoicePART2Len = 6
    
    In this case : INV-02365-6Y5TRE
    
    
    
    
    
    
    
    -- Start Script ---------------------------------------- 
    
    DECLARE @InvoiceNumberPref nvarchar(5)
    
    SET @InvoiceNumberPref = 'INV'
    
    DECLARE @invoicePART1Len int
    
    SET @invoicePART1Len = 5
    
    DECLARE @invoicePART2Len int
    
    SET @invoicePART2Len = 6
    
    
    
    DECLARE @i int
    
    DECLARE @j int
    
    DECLARE @n int
    
    DECLARE @strnum nvarchar(10)
    
    DECLARE @RandomChars nvarchar(10)
    
    DECLARE @RandomInvoiceNumber nvarchar(20)
    
    
    
    SET @j = 1
    
    
    
    DECLARE @invoiceid nvarchar(50)
    
    DECLARE @invoicenumber nvarchar(20)
    
    
    
    DECLARE cursor_invoices CURSOR FOR
    
    SELECT CONVERT(NVARCHAR(50),invoiceid), invoicenumber FROM dbo.invoice
    
    order by createdon
    
    
    
    OPEN cursor_invoices
    
    
    
    FETCH cursor_invoices INTO @invoiceid, @invoicenumber
    
    
    
    WHILE @@FETCH_STATUS = 0
    
    BEGIN
    
    
    
    SET @strnum = CONVERT(nvarchar(10), @j)
    
    SET @j = @j + 1
    
    SET @strnum = REPLICATE('0', @invoicePART1Len-LEN(@strnum)) + @strnum
    
    
    
    
    
    SET @RandomChars = ''
    
    SET @i = 0
    
    WHILE @i < @invoicePART2Len
    
    BEGIN
    
    SET @n = ASCII(0)+CEILING(RAND()*(ASCII('Z')-ASCII(0)))
    
    --exclude value range 58-64 
    
    IF @n>ASCII(9) AND @n<ASCII('A') SET
    
    @n=ASCII(0)+CEILING(RAND()*(ASCII(9)-ASCII(0)))
    
    SET @i = @i + 1
    
    SET @RandomChars = @RandomChars + NCHAR(@n)
    
    END
    
    
    
    SET @RandomInvoiceNumber = @InvoiceNumberPref + '-'+@strnum+'-'+@RandomChars
    
    
    
    PRINT @invoiceid + ' ' + @invoicenumber + ' ' + @RandomInvoiceNumber
    
    
    
    UPDATE invoicebase
    
    SET invoicenumber = @RandomInvoiceNumber
    
    WHERE invoiceid = @invoiceid
    
    
    
    FETCH cursor_invoices INTO @invoiceid, @invoicenumber
    
    END
    
    
    
    CLOSE cursor_invoices
    
    DEALLOCATE cursor_invoices
    
    
    

    Check out our website for more CRM integration into DotNetNuke.

    Digg This