Accessing tools within a VB6 program - AE中使用VB调用Geoprocessing

用这种方法可以调用所有Toolbox中工具,只要具备许可。总体感觉没有python方便。

In VB, you execute any tool through the Execute method of the GeoProcessor object. In

order to access any method or property of the GeoProccessor object you first need to

declare an IGeoProccessor variable and set it to GeoProccessor object. You set the

parameters of a tool through a variant array. Populate the variant array with each

parameter in the same sequence as the usage of tool would show. You must ensure all the

properties marked as required are set; you may also wish to set properties marked as

Optional. See the example below showing how to access the Erase tool and set its

parameters:

'//Initialize the Geoprocessor

Dim GP As IGeoProcessor

Set GP = New GeoProcessor

'//Declare 3 variables for input and output parameters

Dim in_features As String

Dim erase_features As String

Dim out_features As String

'//Define the input/output parameter variables

in_features = "C:\data\erase\Input.shp"

erase_features = "C:\data\erase\Erase.shp"

out_features = "C:\data\erase\Output.shp"

'//Declare and set a variant array to hold the parameters

Dim parameters As IVariantArray

Set parameters = New VarArray

'//Populate the variant array with the parameters

parameters.Add (in_features)

parameters.Add (erase_features)

parameters.Add (out_features)

'//Now execute the Erase tool

GP.Execute "Erase", parameters, Nothing

Below are the system toolbox names and their aliases:

? Analysis Tools— analysis

? Conversion Tools— conversion

? Data Management Tools— management

? 3D Analyst Tools— 3d

? Cartography Tools— cartography

? Geocoding Tools— geocoding

? Geostatistical Analyst Tools— ga

? Linear Referencing Tools— lr

? Multidimension Tools— md

? Network Analyst Tools— na

? Samples— samples

? Spatial Analyst Tools— sa

? Spatial Statistics Tools— stats

中文可参考《学习在 ArcEngine 中使用 Geoprocessing》,写得比较仔细。