﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>博客园-刘寓的博客</title><link>http://www.cnblogs.com/tony111082/</link><description>WHO AM I</description><language>zh-cn</language><lastBuildDate>Thu, 21 Aug 2008 15:05:02 GMT</lastBuildDate><pubDate>Thu, 21 Aug 2008 15:05:02 GMT</pubDate><ttl>60</ttl><item><title>Arcgis Server开发技巧系列  动态刷新经纬度坐标</title><link>http://www.cnblogs.com/tony111082/archive/2006/10/20/534423.html</link><dc:creator>刘寓</dc:creator><author>刘寓</author><pubDate>Fri, 20 Oct 2006 02:09:00 GMT</pubDate><guid>http://www.cnblogs.com/tony111082/archive/2006/10/20/534423.html</guid><wfw:comment>http://www.cnblogs.com/tony111082/comments/534423.html</wfw:comment><comments>http://www.cnblogs.com/tony111082/archive/2006/10/20/534423.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.cnblogs.com/tony111082/comments/commentRss/534423.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/tony111082/services/trackbacks/534423.html</trackback:ping><description><![CDATA[摘要:   在这次的开发项目中遇到了一个新的需求,需要动态在页面上的状态栏显示经纬度坐标,并且要度分秒格式的坐标.真是BT啊.....<br>      好了,言归正传.大家都知道,要在服务器端计算经纬度,然后传回客户端显示,这个方法是不可取的.那么,最好的办法就是在客户端计算经纬度.那么计算经纬度首先应该获取一些基本的信息.就是当前客户端地图两边的经纬度.<br>      比如,客户端地图的大小是800*600.我们首先计算0,0这个点的经纬度,然后计算800,600这个点的经纬度.最后,经过一些运算,就可以获得x,y这个点的经纬度了.<br>      当然,这里还有一些需要注意的地方:<br>      一:由于从Arcgis Server中获取的经纬度是10进制的,所以我们还需要经过一些换算才能得到度分秒式的经纬度.<br>      二:我们取经纬度的时候,一定要取MapDesription.Extent的XMIN等信息,而不能直接取屏幕坐标为0,0的信息,不然数据会不正确.具体为什么,我现在还没有弄清楚.<br>      三:每次改变地图的比例尺的时候,一定要重新获&nbsp;&nbsp;<a href='http://www.cnblogs.com/tony111082/archive/2006/10/20/534423.html'>阅读全文</a><img src ="http://www.cnblogs.com/tony111082/aggbug/534423.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41822/" target="_blank">[新闻]第一财经周刊:当前互联网世界正处无秩序时代</a>]]></description></item><item><title>Arcgis Server系列 ADF的开发与实例</title><link>http://www.cnblogs.com/tony111082/archive/2006/10/18/532335.html</link><dc:creator>刘寓</dc:creator><author>刘寓</author><pubDate>Wed, 18 Oct 2006 04:02:00 GMT</pubDate><guid>http://www.cnblogs.com/tony111082/archive/2006/10/18/532335.html</guid><wfw:comment>http://www.cnblogs.com/tony111082/comments/532335.html</wfw:comment><comments>http://www.cnblogs.com/tony111082/archive/2006/10/18/532335.html#Feedback</comments><slash:comments>16</slash:comments><wfw:commentRss>http://www.cnblogs.com/tony111082/comments/commentRss/532335.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/tony111082/services/trackbacks/532335.html</trackback:ping><description><![CDATA[摘要: 在Arcgis Server学习过程中,大家也许最先使用的就是用自带的ADF进行初步的Server开发.总的来说,ADF算是一个比较强大的Web服务器端控件.为我们封装了大量的代码和客户端操作.从而降低了我们的开发难度.不过,由于我用的是Arcgis Server9.0.其自带的ADF还存在这一些问题,造成了所开发的项目的一些问题,这些问题往往会造成整个项目的失败和遗憾.在这个文章的最后,我会一一指出我所碰到的ADF的缺陷.<br>这个模板实现是的选择一个图层中的一个要素,然后根据这个要素来缓冲查询任意一个图层的要素.通过这个实例,我向大家慢慢讲解一些AO中的一些基础类和接口.并针对它们的大致用途作一个讲解.具体使用则可以参照模板,以后的文章中会陆续介绍.<br>ServerConnection:用于连接Arcgis Server服务器.<br>IMapServer:开发Arcgis Server项目中使用频率最高的接口之一.用于封装服务器对象.一些查询,计算距离和比例尺等功能都在该接口下.<br>IServerContext:服务器上下文对象.需要用它来创建AO对象.并用We&nbsp;&nbsp;<a href='http://www.cnblogs.com/tony111082/archive/2006/10/18/532335.html'>阅读全文</a><img src ="http://www.cnblogs.com/tony111082/aggbug/532335.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41820/" target="_blank">[新闻]Visual Studio 2008 SDK 1.1 发布</a>]]></description></item><item><title>Arcgis Server系列 安装与配置</title><link>http://www.cnblogs.com/tony111082/archive/2006/08/13/475802.html</link><dc:creator>刘寓</dc:creator><author>刘寓</author><pubDate>Sun, 13 Aug 2006 12:40:00 GMT</pubDate><guid>http://www.cnblogs.com/tony111082/archive/2006/08/13/475802.html</guid><wfw:comment>http://www.cnblogs.com/tony111082/comments/475802.html</wfw:comment><comments>http://www.cnblogs.com/tony111082/archive/2006/08/13/475802.html#Feedback</comments><slash:comments>19</slash:comments><wfw:commentRss>http://www.cnblogs.com/tony111082/comments/commentRss/475802.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/tony111082/services/trackbacks/475802.html</trackback:ping><description><![CDATA[<p><span style="FONT-SIZE: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 其实Arcgis Server整个安装过程都比较简单，不过有几点需要注意。首先，主机名最好不要用奇怪的名字，比如有下划线、奇异字符等，不然容易出现不能启动ArcSoc的错误。另外，安装ArcCatalog后，最好不要安装中文补丁，不然ArcSoc停止或者重启的时候也容易出现莫名其妙的错误，当初我的电脑就是这样莫名其妙的，最后我重装系统才明白这个道理。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 安装完成后需要Post一次。如下：<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <img height=443 alt="" src="http://www.cnblogs.com/images/cnblogs_com/tony111082/post.PNG" width=501 border=0><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ArcGis Server账号主要是用于启动ArcSom服务。ArcGIS Container则是用于平时的一些对于Arcgis Server的操作的账户。这里需要注意的是，普通用户是无法启动和操作Arcgis Server的。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 当Post完成以后，系统中将会出现agsadmin和agsusers两个用户组，分别代表上述的两种权限账户。我们需要配置账户。如果为了简单，可以将Administrator设置到这两个账户当中，然后用Administrator登陆就可以了。如果为了安全，最后自己设置。这里还需要注意的是，配置好以后，需要重启计算机，才能启动ArcSom服务。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 现在需要做的是在ArcCatalog里面配置Arcgis Server。这些东西都很简单，这里就不再多说了，帮助文档里面都写的很清楚。首先添加服务，一般输入本机的主机名，然后添加计算机，还是输入主机名，然后添加输出目录。这里需要注意的是，输出目录的虚拟目录必须为写入权限，不然不能生成图片。除非你用的是MIME模式返回图片。（MIME代表图片流，在IIS里面，可以设置IIS头来返回图片，这样就无需在服务器生成图片文件，从而提高服务器端效率）</span><span style="FONT-SIZE: 10pt">。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 最后需要的就是添加ArcSoc服务器对象。如下面的图例所示：<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <img height=401 alt="" src="http://www.cnblogs.com/images/cnblogs_com/tony111082/arcserver_general.PNG" width=507 border=0><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="COLOR: red">这里是配置ArcSoc服务是否自动启动，我这里选择的是手工，因为我这里并不是每次开机就启动服务，当然，在服务器上肯定设置为自动：）<br></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <img height=401 alt="" src="http://www.cnblogs.com/images/cnblogs_com/tony111082/arcserver_parameters.PNG" width=507 border=0><br>&nbsp;&nbsp;&nbsp;&nbsp;<span style="COLOR: red">&nbsp;&nbsp;&nbsp; 这里需要设置地图的mxd文档路径和输出目录。我选择是的用MIME＋URL的方式。因为这样比较方便，当然，如果对性能需求比较高，我还是建议用MIME的方式。<br></span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <img height=401 alt="" src="http://www.cnblogs.com/images/cnblogs_com/tony111082/arcserver_pooling.PNG" width=507 border=0><br>&nbsp;&nbsp;&nbsp;<span style="COLOR: red">&nbsp;&nbsp;&nbsp;&nbsp; 这里是设置服务器池模式。主要是分为池和非池管理两种。默认的情况下，如果只是对GIS服务进行浏览和发布的时候，用池的模式。当对服务要编辑的时候用非池的模式。不过我还是建议大家不管哪种模式都用池的管理方式，这样性能是最优化的。因为池的管理方式是初始化就创建了几个SOC对象，每次只是从池里面取出SOC对象并操作，最后放回池里面。而非池则是每次操作SOC的时候都要动态创建SOC对象，这样就增加了很大的开销。当然，如何用池模式管理非池的操作，后面我会给大家做出说明。</span><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <img height=401 alt="" src="http://www.cnblogs.com/images/cnblogs_com/tony111082/arcserver_process.PNG" width=507 border=0><br>&nbsp;&nbsp;<span style="COLOR: red">&nbsp;&nbsp;&nbsp;&nbsp; 这里就是对服务器的一些回收时间和实例进行管理。</span></span></p>
<p><span style="FONT-SIZE: 10pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 到了这里，整个Arcgis Server的安装和配置就说完了，如果有什么不明白的地方直接回帖或者发邮件告诉我就行了，我的邮件是<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#108;&#105;&#117;&#121;&#117;&#64;&#100;&#99;&#113;&#116;&#101;&#99;&#104;&#46;&#99;&#111;&#109;">liuyu@dcqtech.com</a>。或者<a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#116;&#111;&#110;&#121;&#49;&#49;&#49;&#48;&#56;&#50;&#64;&#104;&#111;&#116;&#109;&#97;&#105;&#108;&#46;&#99;&#111;&#109;">tony111082@hotmail.com</a>。<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;<span style="COLOR: red">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;下一次，我将会从Arcgis Server的ADF开发开始到放弃ADF，而采用Ajax＋VML＋AO的开发模式为大家展开对Arcgis Server的编程体验。</span></span></p>
<img src ="http://www.cnblogs.com/tony111082/aggbug/475802.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41821/" target="_blank">[新闻]死敌VMware变身微软认证计划新成员</a>]]></description></item><item><title>Arcgis Server系列 引子</title><link>http://www.cnblogs.com/tony111082/archive/2006/08/09/472724.html</link><dc:creator>刘寓</dc:creator><author>刘寓</author><pubDate>Wed, 09 Aug 2006 15:20:00 GMT</pubDate><guid>http://www.cnblogs.com/tony111082/archive/2006/08/09/472724.html</guid><wfw:comment>http://www.cnblogs.com/tony111082/comments/472724.html</wfw:comment><comments>http://www.cnblogs.com/tony111082/archive/2006/08/09/472724.html#Feedback</comments><slash:comments>22</slash:comments><wfw:commentRss>http://www.cnblogs.com/tony111082/comments/commentRss/472724.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/tony111082/services/trackbacks/472724.html</trackback:ping><description><![CDATA[摘要:     到公司一年多了，从一个对GIS毫无所知的编程爱好者转变为一个GIS开发人员真的感觉太奇妙了。学习新知识的乐趣是无穷无尽的，当你慢慢的掌握这门新知识的时候，你更会发现，啊，原来这个东西是这样的，没有以前想像的神秘嘛。这个时候，你可以自豪的说，我对这个东西入门了。<br>  其实到公司这一年里做了不少东西，从开始的工作流引擎，到引擎的应用系统，再到流程管理器，再到Notes，再到RBAC，最后到Arcgis Server。其中经历了无数的坎坷，也经历了无数的加班，虽然过程是有点痛苦的，不过结果还是比较令人欣慰的，至少学到了很多学校里面没有碰到过的知识。现在把这段时间对于Arcgis Server的东西慢慢的整理出来，希望对大家，对学习Arcgis的兄弟姐妹们，有点启发。 <br>  后续将从安装开始，一直到针对ADF和AO的Arcgis Server的开发心得。希望和大家一起分享，交流。&nbsp;&nbsp;<a href='http://www.cnblogs.com/tony111082/archive/2006/08/09/472724.html'>阅读全文</a><img src ="http://www.cnblogs.com/tony111082/aggbug/472724.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41819/" target="_blank">[新闻]英特尔雅虎开发网络计算机频道</a>]]></description></item><item><title>破解XP或者2000的IIS连接数限制</title><link>http://www.cnblogs.com/tony111082/archive/2006/02/27/338835.html</link><dc:creator>刘寓</dc:creator><author>刘寓</author><pubDate>Mon, 27 Feb 2006 07:08:00 GMT</pubDate><guid>http://www.cnblogs.com/tony111082/archive/2006/02/27/338835.html</guid><wfw:comment>http://www.cnblogs.com/tony111082/comments/338835.html</wfw:comment><comments>http://www.cnblogs.com/tony111082/archive/2006/02/27/338835.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/tony111082/comments/commentRss/338835.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/tony111082/services/trackbacks/338835.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp; 我们只需要去微软下载一个MtaEdt22的软件就可以了。网址是<A href="http://support.microsoft.com/kb/232068/zh-tw">http://support.microsoft.com/kb/232068/zh-tw</A>。<BR>&nbsp;&nbsp;&nbsp; 然后按照上面的提示就可以了，刚才测试了一下，还不错哈。可以不用换操作系统了，嘿嘿<img src ="http://www.cnblogs.com/tony111082/aggbug/338835.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41818/" target="_blank">[新闻]Windows Live视频邮件9月9日开始测试</a>]]></description></item><item><title>在不同线程之间传递数据</title><link>http://www.cnblogs.com/tony111082/archive/2006/02/13/329524.html</link><dc:creator>刘寓</dc:creator><author>刘寓</author><pubDate>Mon, 13 Feb 2006 02:28:00 GMT</pubDate><guid>http://www.cnblogs.com/tony111082/archive/2006/02/13/329524.html</guid><wfw:comment>http://www.cnblogs.com/tony111082/comments/329524.html</wfw:comment><comments>http://www.cnblogs.com/tony111082/archive/2006/02/13/329524.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cnblogs.com/tony111082/comments/commentRss/329524.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/tony111082/services/trackbacks/329524.html</trackback:ping><description><![CDATA[摘要:  一般情况下，在线程间是不能交换数据的，不过在相同应用程序域中的线程则可以共享应用程序域的数据。我们可以通过AppDomain的GetData和SetData方法来实现这一功能。具体见源代码。 1usingSystem;2usingSystem.Threading;34namespaceConsoleDemo5{6/**////&lt;summary&gt;7///Class1的摘要说明。8///&nbsp;&nbsp;<a href='http://www.cnblogs.com/tony111082/archive/2006/02/13/329524.html'>阅读全文</a><img src ="http://www.cnblogs.com/tony111082/aggbug/329524.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41817/" target="_blank">[新闻]Intel首次公开展示Nehalem架构迅驰3平台</a>]]></description></item><item><title>关于通过ODBC访问NOTES的心得体会</title><link>http://www.cnblogs.com/tony111082/archive/2005/11/13/275211.html</link><dc:creator>刘寓</dc:creator><author>刘寓</author><pubDate>Sun, 13 Nov 2005 04:18:00 GMT</pubDate><guid>http://www.cnblogs.com/tony111082/archive/2005/11/13/275211.html</guid><wfw:comment>http://www.cnblogs.com/tony111082/comments/275211.html</wfw:comment><comments>http://www.cnblogs.com/tony111082/archive/2005/11/13/275211.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.cnblogs.com/tony111082/comments/commentRss/275211.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/tony111082/services/trackbacks/275211.html</trackback:ping><description><![CDATA[<P>在.NET中，可以通过ODBC和NotesSql访问NOTES数据库。不过当中有一些细微的东西，一不小心就会出错。<BR>&nbsp; 1.&nbsp; 填充数据集。<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 平常，我们可以通过很多中方式填充数据集。SqlDataAdapter也有几种构造函数可以用。不过在访问Notes的时候，也许是因为我们用的是嵌套的表，只能用SqlDataAdapter的一种构造函数。<BR>&nbsp;&nbsp;&nbsp; Microsoft.Data.Odbc.OdbcCommand cmd = (Microsoft.Data.Odbc.OdbcCommand)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; iCnn.CreateCommand();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cmd.CommandText = strQuery;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Microsoft.Data.Odbc.OdbcDataAdapter da = new Microsoft.Data.Odbc.OdbcDataAdapter(cmd);<BR>如果用其它的构造函数则会出现一些莫名其妙的错误。</P>
<P>&nbsp;&nbsp; 2.&nbsp; 及时回收内存。<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 由于.NET本身提供垃圾回收机制，所以以前写代码经常没有回收内存。访问NotesSql则通过的是COM组件的方式。因此查询后必须回收内存，不然也会出错。<BR>case "Microsoft.Data.Odbc.OdbcConnection":<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp; Microsoft.Data.Odbc.OdbcCommand cmd = (Microsoft.Data.Odbc.OdbcCommand)iCnn.CreateCommand();<BR>&nbsp;&nbsp;&nbsp; cmd.CommandText = strQuery;</P>
<P>&nbsp;&nbsp;&nbsp; Microsoft.Data.Odbc.OdbcDataAdapter da = new Microsoft.Data.Odbc.OdbcDataAdapter(cmd);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp; da.Fill(dsResult);</P>
<P>&nbsp;&nbsp;&nbsp; da.Dispose();<BR>&nbsp;&nbsp;&nbsp; cmd.Dispose();</P>
<P>&nbsp;&nbsp;&nbsp; da = null;<BR>&nbsp;&nbsp;&nbsp; cmd = null;</P>
<P>&nbsp;&nbsp;&nbsp; break;</P><img src ="http://www.cnblogs.com/tony111082/aggbug/275211.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41816/" target="_blank">[新闻]Pogo浏览器</a>]]></description></item></channel></rss>