Unable To Instantiate TRIM Database: 80040154
I recently came across this error while attempting to connect to TRIM 6 R2 via the TRIMSDK: Retrieving the COM class factory for component with CLSID {8A354548-6BCB-11D3-B273-00A0C9FC3DC0} failed due to the following error: 80040154.
This was a little alarming because it was using the same data adapter as a few other TRIM projects, which were working fine; the only difference between the project was that this particular project was a WPF application, and all of the other applications were ASP.NET applications. This particular application had also previously worked fine, the only change was that I had been upgraded to a 64-bit environment.
After a bit of playing around and research I discovered the TRIM SDK will not connect under a 64-bit process.
Workaround:
- In Visual Studio, right-click your project and go to Properties (last item).
- Select the Build tab.
- Change the Configuration option to All Configurations.
- Change the Platform Target to x86.
This will ensure that your application will only run under an x86 architecture, and will be able to connect to TRIM even on a 64-bit host.
Looking at the QuickSpecs for TRIM 7 it is being based on a 64-bit architecture and therefore this issue should be eliminated come TRIM 7 (in addition to some SDK enhancements and UI integration tools).
Oracle 06413: Connection Not Open (x64)
Having changed to a 64-bit development machine at work recently I ran in to an Oracle error while trying to generate files using CodeSmith. This error was ORA-06413: Connection Not Open. Assuming it was a connection string error, as I had not ran this particular generation in some time and it was likely that the server or username/password had changed, I proceeded to test the connection from SQL Developer. Success!
After ruling out that the connection was indeed valid I did a quick Google search for the error message. After a few clicks I discovered a very well known (has been around for a few years) Oracle issue; When executing an Oracle command from an application with parentheses or equals — ‘(‘ or ’)’ or ‘=’ — in the path then the specified error message is thrown.
In this particular case CodeSmith had been installed under C:\Program Files (x86)\CodeSmith\ which was causing Oracle to fail. The quickest work around was to simply move CodeSmith from the Program Files (x86) path e.g. in to C:\CodeSmith\. However; there is a patch (5383042) for Oracle 10g, which I believe is also applied to Oracle 11G.



