利用ISaveAs 接口保存 GRID 文件时遇到的问题

用ISaveAs 接口保存 GRID 文件时遇到的问题

GIS    2009-09-14 12:33   阅读8   评论0  
字号:    

今天利用isaveas 接口保存GRID文件,每次到了saveas方法,都会报“对 COM 组件的调用返回了错误 HRESULT E_FAIL。”的错误。

首先看仔细的看代码,又看了帮助;
程序写的没有问题

再到网上查找都说:

//------------尝试无用----(不知对你是否有用,先贴出来)----------------------

. 在控制面板--->管理工具--->服务 中,开启Distributed Transaction Coordinator 服务。

2. 打开控制面板--->管理工具--->组件服务--->选择计算机--->我的电脑--->右击属性--->选择MSDTC--->选择安全配置 勾选事务管理器通信中的允许出站、允许入站和不要求进行验证。

如下图所示:

利用ISaveAs 接口保存 GRID 文件时遇到的问题 - Chase Dream - Chase Dream

重启IIS

//--------------------------------------------------------------------------------------------------------

 

反正我的问题这样改后没有解决。还浪费了一定的时间。

 

最后:

public IDataset SaveAs (
    string Name,
    IWorkspace pWorkspace,
    string Format
);

其中只有三个参数,Format 肯定没问题("GRID"),那就是name 和PWorkspace 了。 pWorkspace 看帮助都这么写。  难道是name有什么要求。  立马把name参数随便改了一个,保存成功,可以肯定是name的问题了(我原来那个是一堆表示时间的数字,有20多个字符)。

经过用arcmap实验。知道GRID保存时name 是有限定的:

1。字符数不能超过13个。

2.可以包含a-z  ,A-Z ,0-9  ,“-”“_”.  (这个都是一样)

3.必须以字母开头。

 

将name处理为满足上述3点的就可以了。

来自:http://shenyanhong-1.blog.163.com/blog/static/353741200981403352490/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值