ArcToolbox में कुछ अच्छी विशेषताएं हैं जिनका हम उपयोग कर सकते हैं, लेकिन किसी कारण से, यह ठीक से काम नहीं कर रहा है। यह मुझे एक त्रुटि भी नहीं देता है।
मेरा सॉफ्टवेयर ArcMap के अंदर चल रहा है, इसलिए फिर से AoInitialize करने की कोई आवश्यकता नहीं है?
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");
}
यह एक कोड उदाहरण है जो मैं यहां रख रहा हूं। मैंने DataManagement टूल असेंबली जनरेट की, लेकिन मुझे उस पर हस्ताक्षर करने के लिए फ़ाइल नहीं मिली।
यह कोड मुझे एक त्रुटि देता है। क्या यह हस्ताक्षर करने के कारण है?
मैंने और भी तरीका आजमाया है, IVariantArray का उपयोग करते हुए और सक्सेज के बिना टूल नेम से कॉल करने का। क्या यह सिर्फ मैं हूं या ...?
क्या कोई मुझे "अच्छे" समाधान का संकेत दे सकता है? मुझे ऐसी कई प्रक्रियाएँ चलाने की ज़रूरत है जो पहले से ही आर्कटबॉक्स में निर्मित हैं जिन्हें मैं वास्तव में डुप्लिकेट नहीं करना चाहता।