geodjango访问违反Vista 32位

时间:2010-10-12 17:44:55

标签: django windows-vista django-admin geodjango

geodjango保存条目时遇到了实际问题。 它产生一个“错误:访问冲突读取0x ???????” 该错误并不表示它尝试获取读/写访问权限的文件或文件夹。

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

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

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

  
    
      

来自django.contrib.gis.utils import add_postgis_srs       add_postgis_srs(900913)       来自geofencing.models导入FencingBorder       来自django.contrib.gis.geos import Point       il = FencingBorder()       il.name ='某个地方'       il.interestingness = 3       il.geometry = Point(-16.57,14.0)       Traceback(最近一次调用最后一次):         文件“”,第1行,in         文件“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)

文件“C:\ SWsoft \ Plesk \ Additional \ Python \ lib \ site-packages \ 在通话     return self.cfunc(* args)   文件“C:\ SWsoft \ Plesk \ Additional \ Python \ lib \ site-packages \  check_string     免费(结果) WindowsError:exception:访问冲突读取0x03C2A964

  
    
      

il.geometry = Point(-16.57,14.0)       Traceback(最近一次调用最后一次):         文件“”,第1行,in         文件“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)

文件“C:\ SWsoft \ Plesk \ Additional \ Python \ lib \ site-packages \ 在通话     return self.cfunc(* args)   文件“C:\ SWsoft \ Plesk \ Additional \ Python \ lib \ site-packages \  check_string     免费(结果) WindowsError:exception:访问冲突读取0x03C2A964

2 个答案:

答案 0 :(得分:0)

右 万一其他人有问题.. 问题是遵循以下引用的文档: http://code.google.com/p/geodjango-basic-apps/wiki/FOSS4GWorkshop

如果您从二进制文件安装GDAL或安装PostgreSQL 9.0 请勿在settings.py中引用GDAL dll文件。 始终在Windows系统的PATH中设置VARIABLE_DEFINITION。

罪魁祸首是在settings.py中: GEOS_LIBRARY_PATH ='c:\ geodjango \ gdal \ bin \ geos_c_fw.dll'

答案 1 :(得分:0)

您似乎已回答了自己的问题。谢谢你的建议。我也有类似的问题。我也有一句话:

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

(劫持话题一段时间。我知道人们在Windows上找到一个有效的地理二进制发行版有问题。经过多次尝试,似乎OSGeo4W的发行版对我有用。但我在其他人的博客上看到其他一些发行版而不是OSGeo4W可以在他们的机器上运行。)

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