I developed an SSIS package on a 32 bit machine using Microsoft Visual Studio Ultimate 2012 Trial Version, I've deployed this package to a 64 bit machine for processing. I'm unable to change the run64bitruntime to true, this field is disabled and I can't change it to true. How do I enable this field so that I can be able to change it to true.
-
Is there actually a problem running your package? – Nick.Mc Mar 25 '13 at 12:21
-
I get this error when opening the access connection string **"the specified provider is not supported. Please choose a different provider in connection manager"** – John W. Mnisi Mar 25 '13 at 12:40
-
When I search on this error it implies your package was upgraded in some way - is this correct? (keeping in mind 32>64 is not an upgrade). What type of drivers are you using? based on your other question are you trying to open a Microsoft Access file? – Nick.Mc Mar 25 '13 at 22:55
-
Looking up the meaning of run64bitruntime, I beleive this is only a development setting and makes no difference to when you deploy the package. Have you actually executed the deployed package, and do you get an error? Or are you still at the stage of trying to run it in dev studio? – Nick.Mc Mar 25 '13 at 23:00
4 Answers
Maybe someone will find this useful...
It is possible to change run64bitruntime
parameter on execution environment (SQL Server Job) through:
SQL Server Agent->Jobs->Job Step Properties->General->Execution Options

- 7,839
- 5
- 53
- 75
The SSIS development environment is a 32-bit environment. At design time, you only have access to 32-bit data providers, and as a consequence you can only enlist those 64-bit providers in your SSIS projects that also have a 32-bit version available on the development machine.
The SSIS execution environment, on the other hand, is dictated by the underlying oper-ating system, which means that, regardless of the version of the provider that you used at design time, at run time the correct version will be used. This is true when the package is run by the SSIS service as well as when you run the package yourself from SSDT
So, you can control the version of the providers to be used explicitly, via the Run64BitRuntime project setting ONLY at design time.

- 9,190
- 36
- 114
- 202
XLSX files made problems in our past and XLS can not be used with 64 bit. Therefore all jobs are running with 32 Bit like in the answer from Andrey Morozov.
Our working machines have been 32 bit and as i got a x64 windows, i needed to debug all packages in 32 bit. I am lazy to set the option for all packages manually so i found it is saved in the ".user" file.
I wrote this small C# Script to do the change:
foreach (FileInfo myFile in new DirectoryInfo(@"PATH TO OUR SSISPROJECT SHARE")
.GetFiles("*.dtproj.user", SearchOption.AllDirectories))
{
TextReader textR = myFile.OpenText();
String fileContent = textR.ReadToEnd();
textR.Close();
if (fileContent.Contains("<Run64BitRuntime>true"))
{
fileContent = fileContent.Replace("<Run64BitRuntime>true"
, "<Run64BitRuntime>false");
}
else if (!fileContent.Contains("<Run64BitRuntime>") && fileContent.Contains("<Options>"))
{
fileContent = fileContent.Replace("<Options>"
, "<Options>\r\n <Run64BitRuntime>false</Run64BitRuntime>");
}
else
{
continue;
}
TextWriter textW = myFile.CreateText();
textW.Write(fileContent);
textW.Close();
}
kindly regards

- 150
- 1
- 9
Explicitly controlling 64 Bit RUNTIME Environment....
- Project Properties
- Select Configuration Properties
- Select Debugging
- Select Debug Options
- Set Run64BitRuntime to TRUE

- 11
- 1
-
1And if that setting keeps going back to "false" -- a problem I saw -- then edit file `project_name`.dtproj.user, to have
– Doug_Ivison Sep 13 '19 at 18:56Development false