|
阅读:1677回复:3
AE可以,为撒ArcGIS Server不行
同样两段根据远程机器上tif文件生成RasterLayer的代码,为撒在ArcEngine下运行可以,而ArcGis Server下不行?
|
|
|
1楼#
发布于:2009-06-25 21:15
<P>ArcEngine代码:</P>
<P> Dim workspaceFactory As IWorkspaceFactory<BR> Dim featureWorkspace As IRasterWorkspace<BR> Dim aoFeatureLayer As IRasterLayer<BR> Dim pRasterDataset As IRasterDataset<BR> Dim pRaster As IRaster<BR> Dim pDataSet As IDataset<BR><BR> Set workspaceFactory = New RasterWorkspaceFactory<BR> Set featureWorkspace = workspaceFactory.OpenFromFile("\\10.42.67.22\nxb\TempData", 0)<BR></P> |
|
|
2楼#
发布于:2009-06-25 21:16
<P>ArcGIS Server代码:</P>
<P>Dim pMap As IMap<BR> Dim pWorkspaceFactory As IWorkspaceFactory<BR> Dim pRasterWorkspace As IRasterWorkspace<BR> Dim pRasterDataset As IRasterDataset<BR> Dim pMapServer As IMapServer2<BR> Dim pMapServerObjects2 As IMapServerObjects2<BR> Dim pMapServerContext As IServerContext<BR> Dim pMapResource As ESRI.ArcGIS.ADF.Web.DataSources.ArcGISServer.MapResourceLocal = ...<BR><BR> sFilePathName = sFilePathName.Trim<BR> pMapServerContext = pMapResource.ServerContextInfo.ServerContext<BR><BR> sFilePath = sFilePathName.Substring(0, sFilePathName.LastIndexOf("\"))<BR> sFileName = sFilePathName.Substring(sFilePathName.LastIndexOf("\") + 1)<BR><BR> pWorkspaceFactory = pMapServerContext.CreateObject("esriDataSourcesRaster.RasterWorkspaceFactory")<BR> pRasterWorkspace = pWorkspaceFactory.OpenFromFile("\\10.42.67.22\nxb\TempData", 0)<BR></P> |
|
|
3楼#
发布于:2009-06-25 21:19
<P>在ArcGIS Server下最后一行代码处问题:</P>
<P>pRasterWorkspace = pWorkspaceFactory.OpenFromFile("\\10.42.67.22\nxb\TempData", 0)<BR></P> <P>问题提示为:“对COM组件的调用返回了错误 HRESULT E_FAIL”</P> <P>请问帝国总统,这是撒原因呢?若用AE做,在ArcGIS Server 下,可以直接得到IRasterLayer么?</P> <img src="images/post/smile/dvbbs/em02.gif" /> |
|