Quick way to generate a partially random string in T-SQL

Had a need to generate a partially random string in a SQL proc today.  Came up with the following that is pretty short and sweet:

CAST(CAST(newid() as varchar(40)) as varchar(8))

Idea was originally inspired from this link:
http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=59194

and the post by robvolk…

Tired of “Outlook blocked access to the following potentially unsafe attachments: ….”?

Below is a simple way to get rid of that error.  This was primarily taken from a Microsoft knowledgebase article (http://support.microsoft.com/kb/829982)

Follow these steps to modify the registry and alter Outlook’s attachment security behavior on your computer.

  1. Exit Outlook if it is running.
  2. Click Start, and then click Run. Copy and paste (or type) the following command in the Open box, and then press ENTER:
    regedit
  3. Verify that the following registry key for your version of Outlook exists.
    Microsoft Outlook 2000
    HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Outlook\Security

    Microsoft Outlook 2002

    HKEY_CURRENT_USER\Software\Microsoft\Office\10.0\Outlook\SecurityMicrosoft Office Microsoft Office Outlook 2003
    HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook\Security

    Microsoft Office Outlook 2007

    HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Outlook\Security

    Outlook 2010

    HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Outlook\Security

    If the registry key exists, go to step 5.

    If the registry key does not exist, follow these steps to create it:

    1. Locate, and then click the following registry key:
      HKEY_CURRENT_USER\Software\Microsoft
    2. Under Edit, click New, and then click Key.
    3. Type Office, and then press ENTER.
    4. Under Edit, click New, and then click Key.
    5. For Outlook 2000, type 9.0, and then press ENTER.
      For Outlook 2002, type 10.0, and then press ENTER.
      For Outlook 2003, type 11.0, and then press ENTER.
      For Outlook 2007, type 12.0, and then press ENTER.
      For Outlook 2010, type 14.0, and then press ENTER.
    6. Under Edit, click New, and then click Key.
    7. Type Outlook, and then press ENTER.
    8. Under Edit, click New, and then click Key.
    9. Type Security, and then press ENTER.
  4. Under Edit, click New, and then click String Value.
  5. Copy and paste (or type) the following name for the new value:
    Level1Remove
  6. Press ENTER.
  7. Right-click the new string value name, and then click Modify.
  8. Type the file name extension of the file type that you want to open in Outlook. For example:
    .exe

    To specify multiple file types, use the following format:

    .exe;.com
  9. Click OK.
  10. Exit Registry Editor.
  11. Restart your computer.

When you start Outlook, you can open the file types that you specified in the registry.

Note We recommend that you enable only the file types that you have to have. If you rarely receive a particular file type, we recommend that you give Outlook temporary access to the file type that is in question. Then, reconfigure Outlook to block the file type by undoing the changes to the registry. For more information about how you can configure Outlook to block attachment file name extensions that Outlook does not block by default, click the following article number to view the article in the Microsoft Knowledge Base:

837388 How to configure Outlook to block additional attachment file name extensions

Active Directory domain controllers out of sync

We ran into a problem with one of our domain controllers that was not connected for an extended period of time where it could not sync changes properly when available again.  There is a solution from Microsoft to resolve this issue.

We have repeated the knowledge base article here just in case it is not available on Microsoft’s site.  The original article can be found here

Microsoft’s Article is shown here:

This step-by-step article describes how to use Netdom.exe to reset machine account passwords of a domain controller in Windows Server 2008 R2, in Windows Server 2008, or in Windows Server 2003.

Each Windows-based computer maintains a machine account password history that contains the current and previous passwords that are used for the account. When two computers try to authenticate with each other and a change to the current password is not yet received, Windows relies on the previous password. If the sequence of password changes exceeds two changes, the computers involved may not be able to communicate, and you may receive error messages. For example, you may receive “Access Denied” error messages when Active Directory replication occurs.

This behavior also applies to replication between domain controllers of the same domain. If the domain controllers that are not replicating reside in two different domains, look at the trust relationship more closely.

You cannot change the machine account password by using the Active Directory Users and Computers snap-in, but you can reset the password by using the Netdom.exe tool. The Netdom.exe tool is included in the Windows Support Tools for Windows Server 2003. The Netdom.exe tool is also included in Windows Server 2008 R2 and in Windows Server 2008.

The Netdom.exe tool resets the account password on the computer locally (known as a “local secret”) and writes this change to the computer’s computer account object on a Windows domain controller that resides in the same domain. Simultaneously writing the new password to both places ensures that at least the two computers involved in the operation are synchronized, and starts Active Directory replication so that other domain controllers receive the change.

The following procedure describes how to use the netdom command to reset a machine account password. This procedure is most frequently used on domain controllers, but also applies to any Windows machine account.

You must run the tool locally, from the Windows-based computer whose password you want to change. Additionally, you must have administrative permissions locally and on the computer account’s object in Active Directory to run Netdom.exe.

Use Netdom.exe to Reset a Machine Account Password

//

  1. Install the Windows Server 2003 Support Tools on the domain controller whose password you want to reset. These tools are located in the Support\Tools folder on the Windows Server 2003 CD-ROM. To install these tools, right-click the Suptools.msi file in the Support\Tools folder, and then click Install.
    Note This step is not necessary in Windows Server 2008 R2 and in Windows Server 2008 because the Netdom.exe tool is included in these Windows editions.
  2. If you want to reset the password for a Windows domain controller, you must stop the Kerberos Key Distribution Center service and set its startup type to Manual.Notes
    • After you restart and verify that the password has been successfully reset, you can restart the Kerberos Key Distribution Center (KDC) service and set its startup type back to Automatic. This forces the domain controller that has the incorrect computer account password to contact another domain controller for a Kerberos ticket.
    • You may have to disable the Kerberos Key Distribution Center service on all domain controllers except one. If you can, do not disable the domain controller that has the global catalog, unless it is experiencing problems.
  3. Remove the Kerberos ticket cache on the domain controller where you receive the errors. You can do this by restarting the computer or by using the KLIST, Kerbtest, or KerbTray tools. KLIST is included in Windows Server 2008 R2 and in Windows Server 2008. For Windows Server 2003, KLIST is available as a free download in the Windows Server 2003 Resource Kit Tools. To obtain the tools, visit the following Microsoft Web site:
  4. At a command prompt, type the following command:
    netdom resetpwd /s:server /ud:domain\User /pd:*

    A description of this command is:

    • /s:server is the name of the domain controller to use for setting the machine account password. This is the server where the KDC is running.
    • /ud:domain\User is the user account that makes the connection with the domain you specified in the /s parameter. This must be in domain\User format. If this parameter is omitted, the current user account is used.
    • /pd:* specifies the password of the user account that is specified in the /ud parameter. Use an asterisk (*) to be prompted for the password.

    For example, the local domain controller computer is Server1 and the peer Windows domain controller is Server2. If you run Netdom.exe on Server1 with the following parameters, the password is changed locally and is simultaneously written on Server2, and replication propagates the change to other domain controllers:

    netdom resetpwd /s:server2 /ud:mydomain\administrator /pd:*
  5. Restart the server whose password was changed. In this example, this is Server1.

Fix Outlook Web Access (OWA) on Windows 7 and Vista

There is an issue using OWA on Windows 7 and Windows Vista which makes Outlook Web Access (OWA) unusable.  To fix this requires a hotfix to be installed on the Exchange Server.  The details of this hotfix can be found at the below link:

http://support.microsoft.com/kb/911829

Interesting feature within Windows 7

Windows users are excited over the discovery of a hidden “GodMode” feature that lets users access all of the operating system’s control panels from within a single folder.  In order to enable this feature all you need to do is to create a new folder and then rename the folder to the following:

GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}

Once that is done, the folder’s icon will change to resemble a control panel and will contain dozens of control options.

I think most of these options are available elsewhere, but this provides a simple, easy-to-use method to access all of them.

Mail Merge from Microsoft Outlook

Created a short video about how to do a Mail Merge from Microsoft Outlook using the Categories option for Contacts.

See all the details here

Custom Parameters with ObjectDataSource and SqlDataSource

Found a decent article about custom parameters for data sources in ASP.NET.  It was written by Eilon Lipton who has been on the ASP.NET team for quite a while at Microsoft.  The article discuss how to insert your own custom parameters and has easy examples and a good explanation.

Getting more useful information into Google Analytics

We use Google Analytics (GA) for all our sites and most of our client sites.   It often provides the most bang for the buck and makes slicing and dicing your analytics pretty easy to do.

On of the most interesting sections of Google Analytics is in the Visitors section and it is called User Defined.  This is an area that allows you to create some customized “tags” or “labels” for any of your visitors.

I could go on and explain all the nitty-gritty details, but guys over at Google Analytics have already posted a very detailed explanation on how to implement this capability and shows how it can provide additional value to the tremendous value that GA already provides.

To review all the User Defined details you just use the links already created in this post.

How to Setup LogMeIn Secondary Users

LogMeIn is a platform that we use internally for our own computers as well as all our clients.

One of the most useful features of the LogMeIn offering is the ability to setup a secondary user to allow access to one or more computers in your account.  It is pretty easy to setup this feature.

By creating Secondary Users in your LogMeIn account, you can allow remote access to one or more of your computers.   Secondary Users have access only to the computers that you authorize, and you can disable their access at any time.  Secondary Users can not see any details of your LogMeIn account.

To create a Secondary User, follow these steps:

  1. Log in to LogMeIn.com using your registered email and password.
  2. On the My Computers page, click the Users link on the left side of the screen.  If you do not see the Users link you probably have to change your view to be “Advanced View”.
  3. Click the Secondary Users link at the top of the screen
  4. Click Add New Secondary User.
  5. Enter the email address for the Secondary User that you are adding to you account.
  6. If you don’t specifically change the permissions, the secondary user will have access to all computers in your account.  However, you can select specific computers using the Specify Computers option
  7. Once done, click Send Invitation.

Note: Secondary Users are required to define their own password when accepting the invitation, and can change it at any time.   The Secondary User will need to know the Windows Username and Password for the computer’s they have received access to.  If the computers are on a domain they can probably login with their own domain logins.

Lenovo Discounts

Found some discounts on Lenovo laptops (and some desktops) and thought I would pass it along.

Promo Code: USPENTERAIN3

Save an additional 10% + Free Shipping

There are some pretty decent laptops available.