Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

PRB: SQL Server 2012 DQSInstaller.exe may fail accessing TMP folder


View products that this article applies to.

Symptoms

The SQL Server 2012 Data Quality Services installer DQSInstaller.exe may fail on computers where the temp folder path contains an accented or special ANSI character.

For example, for Windows users with accented characters in the user name, the temp folder may contain accented characters é, such as C:\Users\UsérNamé\AppData\Local\Temp\

You may note the following errors on the console when running DQSInstaller.exe, or in the DQSInstaller.exe output log (default location is C:\Program Files\Microsoft SQL Server\MSSQL11.SQL2012\MSSQL\Log\DQS_install.log) 

"CREATE ASSEMBLY failed because it could not open the physical file"

 * Register Microsoft.Practices assemblies
 Msg 6501, Level 16, State 7, Server DOMAIN\SERVERNAME, Line 2
 CREATE ASSEMBLY failed because it could not open the physical file 'C:\Users\<username>\AppData\Local\Temp\<random folder>\Microsoft.Practices.ObjectBuilder2.dll': 3(The system cannot find the path specified.).
ERROR - An error occured, check message above
Script process returned unexpected exit code: '1'.
Action 'Register data quality assemblies and stored procedures' finished with errors, aborting installation.
Starting installation rollback...
Installation rollback completed successfully.
DQS Installer finished with errors. Please see installation log file at c:\Program Files\Microsoft SQL Server\MSSQL11.InstanceName\MSSQL\Log\DQS_install.log
Press any key to continue...
 

↑ Back to the top


Cause

The temp folder used by DQSInstaller.exe is specified by the environment variable TMP.

DQSInstaller extracts assembly files and scripts into a temporary folder with a random name under the temp folder. If this temp path contains special characters, the DQSInstaller does not correctly neutralize the accented or special characters when running scripts and assemblies.

↑ Back to the top


Resolution

The easiest way to resolve the problem is to launch the command prompt as administrator (elevate it if UAC is enabled), override the TMP location temporarily with a local TMP variable, and then run the DQSInstaller.exe

In this command prompt syntax example we will make a directory (md) c:\temp, then set the TMP variable to that location, and then change directory into the folder where DQSInstaller.exe is present, then run the DQSInstaller.exe (with no extra switches).

md c:\temp
SET tmp=c:\temp
cd "c:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLServer\MSSQL\Binn\"
DQSInstaller.exe

↑ Back to the top


More Information


To visit the TMP folder in windows explorer, you may open use the placeholder %tmp%

Start > Run > %tmp%


To test what the current TMP environment variable is, you may use the SET syntax from the command prompt, or echo syntax:

SET TMP

echo %tmp%



To permanently change the TMP and TEMP environment variables, see also http://technet.microsoft.com/en-us/library/aa998945(v=EXCHG.65).aspx

↑ Back to the top


Keywords: kbtshoot, kb

↑ Back to the top

Article Info
Article ID : 2702283
Revision : 1
Created on : 1/7/2017
Published on : 11/19/2012
Exists online : False
Views : 336