public void UpdateParameters(ESRI.ArcGIS.esriSystem.IArray paramvalues, ESRI.ArcGIS.Geoprocessing.IGPEnvironmentManager pEnvMgr) { IGPUtilities3 gpUtilities3 = new GPUtilitiesClass(); IGPParameter revisionTableParameter = paramvalues.get_Element(in_changesTablesNumber) as IGPParameter; IGPValue revisionTableGPValue = gpUtilities3.UnpackGPValue(revisionTableParameter); if (revisionTableGPValue.IsEmpty() == false) { if (gpUtilities3.Exists(revisionTableGPValue) == false) { IGPEnvironment workspaceEnvironment = gpUtilities3.GetEnvironment(pEnvMgr.GetEnvironments(), "workspace"); IGPValue workspace = workspaceEnvironment.Value; if (workspace.IsEmpty() == false) { string old_locationValue = workspace.GetAsText() + System.IO.Path.DirectorySeparatorChar + revisionTableGPValue.GetAsText(); try { string location = gpUtilities3.QualifyOutputCatalogPath(old_locationValue); if (location.Length != old_locationValue.Length) { revisionTableGPValue.SetAsText(location); gpUtilities3.PackGPValue(revisionTableGPValue, revisionTableParameter); } } catch { } } } } gpUtilities3.ReleaseInternals(); }