问题标签 [arcobjects]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1300 浏览

visual-studio-2010 - Visual Studio 的调试器/交互式窗口如何在 .NET 中转储 COM 对象的属性?

在这个相关问题中,我注意到 Visual Studio 的调试器能够枚举System.__ComObject引用的属性,这是“当包装器类型不明确时使用的隐藏类型”——例如,当你从另一个获取它时获得的对象类型COM 对象,不要自己实例化它:

COM 对象调试视图

此外,如果您只是将 COM 对象的标识符写入即时窗口,它的属性和值也会被类似地转储:

COM 对象立即窗口

请注意,这与 VS2010 的“动态视图”是分开的,我相信它使用IDispatch和 COM 反射来枚举 COM 对象的属性,而不使用 PIA 和 .NET 反射。我正在使用的对象没有实现IDispatch(它们也没有为此实现IProvideClassInfo),因此,“动态视图”无法获取有关它们的任何信息:

动态视图

有趣的是,SharpDevelop的调试器无法列出System.__Comobjects 的成员(例如point.Envelope),只能列出强类型的 RCW(例如point)。

SharpDevelop 调试器

那么 Visual Studio 是如何做到的呢?

我相信在这种情况下,这是因为主互操作程序集存在这些对象支持的接口的定义,并且 Visual Studio 很可能使用反射来枚举支持的接口和属性。那准确吗?如果是这样,它是如何工作的?

首先,它如何访问 PIA?它只查看当前加载的 PIA 还是动态加载它们(如果是,如何加载)?它如何确定枚举属性的接口,其中可以有很多?它似乎只使用一个,不一定是第一个。从我正在使用的 API的文档IUnknown(ArcObjects)来看,这些对象的默认接口是,因此它也不仅仅是使用默认接口。

在屏幕截图的示例中,它枚举成员的接口是IEnvelope接口,它继承自IGeometry接口。VS2010怎么知道不枚举成员IGeometry,在我的测试中,如果你只枚举PIA中的所有接口类型,它首先出现?发生了一些非常聪明的事情,或者我错过了一些明显的事情?

我问的原因是,如果LINQPad 的开发人员知道 VS 是如何做到的,他似乎愿意实现相同的功能。因此,这里的一个好的答案可以大大有助于改进这个非常流行的工具。

0 投票
1 回答
351 浏览

arcobjects - VBA 6.0,在选择每个组合框时更改 3 个组合框的代码!称为选择更改!

我正在尝试编写代码以在选择每个组合框时更改 3 个组合框。例如:在组合框 1 中,他们选择 Urban,它用 2010 和 2011 填充组合框 2,然后用 houston、austin 等填充组合框 3。我正在尝试使用 If then 循环,但我得到了“无效的限定符”的错误,我不明白,因为它是有效的,它已在整个脚本中使用。任何帮助都会很棒!

0 投票
1 回答
142 浏览

.net - 我的可执行文件旁边的这些 .s 和 .x 文件是什么?

我们有一些针对 .NET 3.5 构建并引用 ESRI ArcObjects .NET DLL(反过来又引用 COM DLL)的应用程序。我们在 Windows 2008 上运行它们。

有时我会查看应用程序的安装目录,在 EXE 旁边有一个文件列表.s.x扩展名。

.x 和 .s 文件列表

我想知道它们是否是在程序崩溃时生成的,但如果是,那么它似乎并不一致。文件名都采用“xx#####”模式,其中##### 是数字,我认为这可能与进程 ID 有关,但我不确定。

我没有把这些文件放在那里,我找不到任何关于它们是什么的信息。它们是什么,它们为什么在那里?

0 投票
1 回答
2073 浏览

java - 如何使用 arcobject (Arcgis 10) 构建 java 桌面应用程序?

我尝试使用 Arcgis 构建 Java 独立应用程序

我已经为 java 平台安装了 Arcgis Desktop 10 和 ArcObject SDK

我只是试着开始..

所以我用这个教程

然后我从我的 arcgis 安装中包含库 arcobjects.jar

C:\Program Files (x86)\ArcGIS\Desktop10.0\java\lib\arcobjects.jar

进入我的 netbeans 项目

然后我写这个(类似于教程)

它的错误..输出是

我的问题 :

  1. 如何使它正确?

  2. 如何使用 arcgis 构建 java 独立应用程序?(以及我需要什么样的 arcgis 技术?)

    • 我已经凝视了 2 天,但我仍然无法弄清楚

    • 我已经去他们的论坛了.. 但是很难找到胎面帖子页面。所以我最终到了这里。

0 投票
1 回答
172 浏览

c# - 创建具有特定 arcgis 功能的 .net 应用程序

我是 arcgis 的新手。我的任务是创建可以执行特定 arcgis 功能(如数字化、插值等)的 .net 桌面应用程序。所以我的问题是

我可以在 .net 中开发应用程序来执行 arcGis 的特定功能,例如插值等吗?

如果是,中级开发人员需要多少时间?

0 投票
1 回答
1187 浏览

vb.net - 如何在 ArcObjects & VB.NET 中创建多路径折线?

我有一个应该很容易解决的问题,但它让我很头疼,无法弄清楚。

我有一堆折线,我想将这些折线合并成一个折线对象。这些折线不一定是连接的,我不希望它们在合并过程中连接。最终结果将是由单独的段或“路径”组成的单个折线对象。

我尝试从每条折线创建线段并将这些线段添加到线段集合中,然后将其转换为折线对象,但这似乎在此过程中神奇地将线段连接在一起。

我知道这是可能的,我以前见过多路径折线对象。请帮忙!

0 投票
2 回答
10166 浏览

c# - 如何使用 C# 在 ArcGIS 中选择要素并突出显示

嗨,我有以下代码,用于根据属性放大 arcGIS 对象,现在我需要的是能够使用选择功能突出显示该区域(您右键单击地图上的区域并选择的功能特征)。

目前我有一个可以进行缩放的事件。我也想将此选择添加到相同的属性中。

先感谢您!!!

我尝试添加此代码,我认为这会将特定功能添加到选择中。但也没有运气。

0 投票
1 回答
843 浏览

vb.net - SDE 要素类 (vb.net) 上的 ArcObjects 空间查询失败

所以我有一些代码可以使用空间过滤器对要素图层执行空间选择。这适用于普通要素类图层,但在 SDE 要素类上运行时会失败。我想知道是否有人可以阐明问题可能是什么?我得到的错误是 HRESULT 0x80041515,它给了我一个错误代码,我可以在任何地方找到任何信息。我的函数采用折线和图层字符串,并根据线的中心点在图层中选择一个多边形。这是代码示例:

当我调用 pFeatureSelection.SelectFeatures() 时,代码会失败,但仅当要素图层属于 SDE 要素类时。有任何想法吗?

谢谢,

卢克

0 投票
2 回答
2487 浏览

c# - 无法嵌入“ESRI.ArcGIS.DataSourcesGDB.FileGDBWorkspaceFactoryClass”

我在 C# 中为 arcmap 添加了应用程序,并尝试连接我的文件地理数据库。所以当我试图运行它时,我得到了这个错误:

然后是添加的路径

我以前从未见过这个错误,我想知道出了什么问题。

这是它的主要代码:

所以错误在这一行:

我希望有人可以为我提供此错误的解释,并在我的情况下提供可能的解决方法。

出了什么问题?

0 投票
2 回答
1078 浏览

c# - 在 C# 中使用 arcobjects 在多边形内创建一个随机点?

我试图在 C# 中创建一个函数,该函数将返回一个随机的 IPoint 特征,该特征应该在一个选定的多边形内,但我对如何进行完全着迷。

理想情况下,函数的定义如下: