在Windows2003 server 64位系统上使用ArcEngine开发的WCF服务

之前大篇文章提到,ESRI说AE10.0以后已经不支持WebService的发布,经过一段时间的测试,发现目前10.2.2版本开始的WCF服务都可以正常发布,且运行正常。

先说一下之前遇到的问题,本机测试和发布都没有任何问题,一到WINDOWS SERVER上发布,遇到AE数据编辑就会报错,错误都是在pFeatureCursor.Update或Insert时发生,翻遍了百度和谷歌相关的贴子,都没有找到解决问题的答案,现将我的解决方案贴出来。

1.新建一个应用程序池,由于AE是32位程序,应用程序池需要设置“启用32位应用程序”为True.

2.由于程序总是在pFeatureCursor.Update或Insert时发生,怀疑是当前用户权限不够造成的,所以有以下两个方法解决:

(1)将新建的应用程度池的标识,修改为LocalSystem,这样本机用户拥有所有权限。

(2)继续使用默认的ApplicationPoolIdentity身份,由于ApplicationPoolIdentity是匿名用户(可查看这篇文章,https://www.cnblogs.com/yjmyzz/archive/2009/10/26/1590033.html),但它属于Users用户组,可增加Users组对网站文件夹的添加和修改权限。方法如下:

在网站上右键,“编辑权限”,“安全”,编辑“Users"组权限,增加“写入“和”修改"权限,或直接设置为“完全控制”。

经过以上操作后,AE写的WCF服务就可以正常使用了,对于SHAPE文件的编辑和空间分析,再也可以不用arcgis server了。

原文地址:https://www.cnblogs.com/SimpleGIS/p/11575013.html

时间: 2024-10-13 14:28:11

在Windows2003 server 64位系统上使用ArcEngine开发的WCF服务的相关文章

关于在64位系统上,使用APlayer,运行报错“找不到指定的模块”

使用APlayer开发了一个C#程序,原先开发电脑是32位的,安装电脑也是32位,只需要将相应的文件打包,然后在system32文件夹中放入atl71.dll和D3DX9_43.dll,项目运转正常.但后来因为系统升级,换了台win10 64位的系统,开发时只需将项目的平台换成x86,但是打包后安装却报错,且system32下的两个dll已存在.经过一天的摸索,因为64位系统有个SysWOW64  文件夹,将所需的两个dll放入此文件夹,问题得已解决. 网上查出两个文件夹的区别 \Windows

[单选题]64位系统上,定义的变量int *a[2][3]占据的——字节

4 12 24 48 正确答案: 很遗憾,没答对,再接再厉! 答案解析 在64位系统上,一个指针占8个字节.在32位系统上,一个指针占4个字节.注意无论在32位还是在64位系统占,int均为4个字节.

32位程序在64位系统上获取系统安装时间(要使用KEY_WOW64_64KEY标记)

众所周知,取系统的安装时间可取注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion的子项InstallDate,此值是个DWORD类型的UnixStamp.  但是在64位系统上有所不同(仅测试了win7.win8),默认情况下32程序在64位机器上访问的是下面这个地址HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion

【转】将 Linux 应用程序移植到 64 位系统上

原文网址:http://www.ibm.com/developerworks/cn/linux/l-port64.html 随着 64 位体系结构的普及,针对 64 位系统准备好您的 Linux® 软件已经变得比以前更为重要.在本文中,您将学习如何在进行语句声明.赋值.位移.类型转换.字符串格式化以及更多操作时,防止出现可移植性缺陷. 0 评论: Harsha S. Adiga, 软件工程师, IBM 2006 年 5 月 18 日 内容 在 IBM Bluemix 云平台上开发并部署您的下一个

Win7 64位系统上配置使用32位的Eclipse(转)

Win7 64位系统上配置使用32位的Eclipse 博客分类: Eclipse eclipse 最近工作电脑换成了64位的win7系统,之前个人电脑上安装的jdk和Eclipse都是32位的.而新的工作电脑上安装的JDK是64位的,因 为原来的Eclipse自己安装了很多的插件和个性化配置,不想重新安装64位的Eclipse,所以想在64位的win7系统上继续使用原来的32位 Eclipse. 32位的Eclipse无法和64位的jdk搭配使用,但是我又不想仅仅为了适配Eclipse而只安装3

32位程序访问64位系统上的Windows注册表

今天在工作的过程中遇到个奇怪的为问题,就是通过c#获取注册表键值的问题,一般都比较简单: string SQLPath = string.Empty; RegistryKey hkml = Registry.LocalMachine; RegistryKey MSSQLServerKey = hkml.OpenSubKey(@"SOFTWARE\MICROSOFT\MSSQLServer"); if (MSSQLServerKey != null) { string[] keys =

在64位系统上不能安装Matlab notebook的解决方案

在64位系统上不能安装Matlab notebook的解决方案 过程分解 第一步:安装好matlab(附:Matalab R2015a界面) 第二步:在matlab中执行命令 >>notebook -setup  ,完成安装notebook 第三步: 输入命令>>notebook ,启动notebook,弹出如下问题界面(64bit系统安装时) 解决方法:替换下面红色方框内的这段内容 解决方案(拷贝覆盖即可): 添加PtrSafe属性,将: Private Declare  Fun

【OpenCV基础】Win7 64位系统上OpenCV的安装与在VS2013上的配置

OpenCV(Open Source Computer Vision Library)是一个开源的跨平台开源计算机视觉库,能在Windows.Linux.Mac等平台上运行,使用C语言与C++编写而成,轻量且高效. 下面介绍一下怎么在Win7 64位系统上安装OpenCV以及如何利用VS2013进行基于OpenCV的程序开发.OpenCV的函数库封装在了lib和dll里,并且有两种版本,一种是x86(32位),一种是x64(64位),我在64位系统上使用32位的库没有成功,所以这个教程只适用于W

【转载】GetAdaptersInfo函数在64位系统上返回ERROR_NOACCESS的有关问题

From:http://www.educity.cn/wenda/351190.html GetAdaptersInfo函数在64位系统下返回ERROR_NOACCESS的问题 实际应用中一个程序在长时间运行后内存占用较高时发生崩溃,从dump信息中,发现GetAdaptersInfo函数返回了一个奇怪的错误码998(ERROR_NOACCESS),百度搜索不到相关的信息.MSDN上GetAdaptersInfo函数的错误码正常情况下只有5种.并且一共发生的两次崩溃都出现在一台Win7 64位机