object sev = null;//用來標記處理信息 //1-定義GeoProcessor對象 // Geoprocessor gp = new Geoprocessor(); IGeoProcessor2 gp = new GeoProcessorClass(); //2-設置參數 gp.OverwriteOutput = true; //3-設置工具箱所在的路徑 gp.AddToolbox(@"E:\Users\zheng\Desktop\tbx測試\mymodel.tbx"); //4-設置輸入參數 IVariantArray parameters = new VarArrayClass(); parameters.Add(@"E:\Users\zheng\Desktop\新建文件夾\Chp12\Ex1\DEM\aaaaaaaaaaaa\mmmmmm.shp"); // parameters.Add("45"); // parameters.Add("225"); parameters.Add(@"E:\Users\zheng\Desktop\新建文件夾\Chp12\Ex1\DEM\dem50"); //5-執行工具 try { gp.Execute("Model", parameters, null); } catch (Exception ex) { MessageBox.Show(ex.Message); } finally { MessageBox.Show(gp.GetMessages(ref sev).ToString()); }
注意:在使用的過程中必須確保輸入參數和輸出參數的正確,參數的順序也必須與模型運行時顯示的對話框的順序相同。一般情況下參數都為字符串。特別注意的一點,在一台機子上運行沒問題的模型(在ArcGIS以及自己開發的程序中),移植到另外的機子上時,可能以及肯定會出現問題,一般為文件路徑不正確、找不到文件。所以需要注意把模型的過程文件的存儲地址進行設置,默認是在 C盤 ArcGIs的default.gdb下,移植時需要重新定義已存在的路徑。目前程序開發中暫未找到設置模型操作環境的處理…………