1

geodjango 保存条目时遇到了真正的问题。它会产生“错误:访问冲突读取 0x???????” 该错误不指示它试图获得读/写访问权限的文件或文件夹。

经过研究,我发现其他非 django 程序也有这个问题,其中一些通过关闭 Vista 的 DEP 控制器得到修复,但我有点害怕走这条路,甚至不完全确定这是否能解决问题。

任何人有任何想法......?Vista 是一场噩梦。

以下是错误输出:Python 2.5.4 (r254:67916, Dec 23 2008, 15:10:54) [MSC v.1310 键入“帮助”、“版权”、“信用”或“许可”以获取更多信息(InteractiveConsole )

from django.contrib.gis.utils import add_postgis_srs add_postgis_srs(900913) from geofencing.models import FencingBorder from django.contrib.gis.geos import Point il = FencingBorder() il.name = 'some place' il.interestingness = 3 il. geometry = Point(-16.57,14.0) Traceback(最近一次调用最后):文件“”,第 1 行,在文件“C:\SWsoft\Plesk\Additional\Python\lib\site-packages\ if isinstance(value, self ._klass) 和 (str(value.geom_ty 文件"C:\SWsoft\Plesk\Additional\Python\Lib\site-packages\

return capi.geos_type(self.ptr)

File "C:\SWsoft\Plesk\Additional\Python\lib\site-packages\ in call return self.cfunc(*args) File "C:\SWsoft\Plesk\Additional\Python\lib\site-packages\ check_string free (结果)WindowsError:异常:访问冲突读取 0x03C2A964

il.geometry = Point(-16.57,14.0) Traceback(最近一次调用最后):文件“”,第 1 行,在文件“C:\SWsoft\Plesk\Additional\Python\lib\site-packages\ if isinstance(value , self._klass) 和 (str(value.geom_ty 文件 "C:\SWsoft\Plesk\Additional\Python\Lib\site-packages\

return capi.geos_type(self.ptr)

File "C:\SWsoft\Plesk\Additional\Python\lib\site-packages\ in call return self.cfunc(*args) File "C:\SWsoft\Plesk\Additional\Python\lib\site-packages\ check_string free (结果)WindowsError:异常:访问冲突读取 0x03C2A964

4

2 回答 2

0

Right In case anyone else ever has the issue.. The problem was following a doc referenced at: http://code.google.com/p/geodjango-basic-apps/wiki/FOSS4GWorkshop

if you install GDAL from binary or install PostgreSQL 9.0 DO NOT reference the GDAL dll file in your settings.py. Always go with setting the VARIABLE_DEFINITION in windows system's PATH.

The culprit was this in settings.py: GEOS_LIBRARY_PATH='c:\geodjango\gdal\bin\geos_c_fw.dll'

于 2010-10-14T01:15:27.440 回答
0

你似乎已经回答了你自己的问题。谢谢你的建议。我也有类似的问题。我也有这样的一行:

GEOS_LIBRARY_PATH = r'C:\OSGeo4W\bin\geos_c.dll'

(劫持这个话题一段时间。我知道人们在 Windows 上找到工作的 geos 二进制发行版时遇到问题。经过几次尝试,似乎 OSGeo4W 的发行版对我有用。但我在其他人的博客上读到其他发行版而不是 OSGeo4W 的作品他们的机器。)

所以我删除了这一行并将 C:\OSGeo4W\bin\geos_c.dll 添加到系统的 PATH 环境变量中。之后,它工作正常。所以这证实了托斯卡纳的解决方案。希望它可以帮助遇到同样问题的人。

于 2011-01-24T05:01:30.810 回答