Hay algunas características interesantes en ArcToolbox que podemos usar, pero por alguna razón, esto NO funciona correctamente. Ni siquiera me arroja un error.
Mi software se está ejecutando dentro de ArcMap, por lo que no es necesario volver a inicializar, ¿corregir?
public void Execute()
{
InitializeProduct();
try
{
Geoprocessor gp = new Geoprocessor();
gp.OverwriteOutput = true;
FeatureToPoint featureToPoint = new FeatureToPoint();
string outputPathName = CurrentWorkspace.PathName + "\\teste_centroide";
featureToPoint.in_features = InputFeatureClass;
featureToPoint.out_feature_class = outputPathName;
featureToPoint.point_location = "INSIDE";
IGeoProcessorResult result = (IGeoProcessorResult)gp.Execute(featureToPoint, null);
if (result == null)
{
for (int i = 0; i <= gp.MessageCount - 1; i++)
{
Console.WriteLine(gp.GetMessage(i));
}
}
IGPUtilities gpUtils = new GPUtilitiesClass();
this.OutputFeatureClass = gpUtils.OpenFeatureClassFromString(outputPathName);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message + "\r\n");
}
Este es un ejemplo de código que estoy teniendo aquí. Generé el conjunto de herramientas de DataManagement, pero no pude encontrar el archivo para firmarlo.
Este código solo me da un error. ¿Es por la firma?
También he intentado lo contrario, usando IVariantArray y llamando desde el nombre de la herramienta, sin éxito. ¿Soy solo yo o ...?
¿Alguien puede señalarme una solución "más agradable"? Necesito ejecutar varios procesos que ya están construidos en ArcToolbox que realmente no quiero duplicar.