' code works when connection = "C:\Users\ ... \ArcCatalog\myGIS.sde" Dim connection as String = "Database Connections\myGIS.sde" Dim myWorkspace as IWorkspace Dim factoryType as Type = Type.GetTypeFromProgID("esriDataSourcesGDB.SdeWorkspaceFactory") Dim myWorkspaceFactory = Ctype(Activator.CreateInstance(factoryType), IWorkspaceFactory) myWorkspace = myWorkspaceFactory.OpenFromFile(connection, 0) ' here is where I get the error.
Solved! Go to Solution.
Dim connection as String = "Database Connections\myGIS.sde" ' ... other stuff Dim factoryType as Type = Type.GetTypeFromProgID("esriDataSourcesGDB.SdeWorkspaceFactory") Dim myWorkspaceFactory = Ctype(Activator.CreateInstance(factoryType), IWorkspaceFactory) If connection.StartsWith("Database Connections\") Then Dim userProfile as String = System.Environment.GetEnvironmentVariable("UserProfile") ' for 10.0 ' Dim fileLocation As String = userProfile & "\AppData\Roaming\ESRI\Desktop10.0\ArcCatalog\" ' for 10.1 Dim fileLocation As String = userProfile & "\AppData\Roaming\ESRI\Desktop10.1\ArcCatalog\" connection = connection.Replace("Database Connections\", fileLocation) End If Dim myWorkspace as IWorkspace = myWorkspaceFactory.OpenFromFile(connection, 0) ' no more error
Dim connection as String = "Database Connections\myGIS.sde" ' ... other stuff Dim factoryType as Type = Type.GetTypeFromProgID("esriDataSourcesGDB.SdeWorkspaceFactory") Dim myWorkspaceFactory = Ctype(Activator.CreateInstance(factoryType), IWorkspaceFactory) If connection.StartsWith("Database Connections\") Then Dim userProfile as String = System.Environment.GetEnvironmentVariable("UserProfile") ' for 10.0 ' Dim fileLocation As String = userProfile & "\AppData\Roaming\ESRI\Desktop10.0\ArcCatalog\" ' for 10.1 Dim fileLocation As String = userProfile & "\AppData\Roaming\ESRI\Desktop10.1\ArcCatalog\" connection = connection.Replace("Database Connections\", fileLocation) End If Dim myWorkspace as IWorkspace = myWorkspaceFactory.OpenFromFile(connection, 0) ' no more error