从零开始的生活是充实的!
SharePoint搞到牛叉!

一直以来很多人都会被一件事所困扰,就是不管是07还是10在64位的环境,

web应用程序没有办法直接运行调试sharepoint的程序了

经常会提示这样一个错误

“找不到位于 http://localhost:80 的 Web 应用程序。请确认正确键入了此 URL。如果此 URL 需要提供现有内容,则系统管理员可能需要添加到指定应用程序的新请求 URL 映射。”

很多人很按着控制台应用程序的方法去修改为64位的生成方式,然后你会发现,还是不好使。

原因根本就不是因为64的问题。

总结了几点原因,不知道是不是对的

大家可以参考,有不对的地方,请指出。

1.  vs创建的web应用程序不是利用server带的iis发布的,而是利用了他自己的iis服务器。

2.  网站的验证方式不是windows验证。

3. 由于不是一个iis服务器,所以更不可能是一个应用程序池。

 

总结以上几点原因后,便从iis到vs 做了一系列的调整,最后成功了。 o my gad

1. 首先在iis 上创建一个 网站,设定好端口,千万不要和别的网站重复,网站的应用程序池选为和sharepoint一个应用程序池。

2. 设置网站的验证方式为windows认证。

3. 修改已经创建好的web应用程序的属性,在web选项中,找到servers->use local iis web server

在project url 上写上http://localhost:端口号/web应用程序名称,端口号就是刚刚创建网站的端口号。不管出什么信息一路确定就可以了。

4. 运行程序,你会发现web的url能找到了,new spsite 不会报错了。

很遗憾,还没有成功,因为又出了新问题“拒绝访问。 (异常来自 HRESULT:0x80070005 (E_ACCESSDENIED))”

拒绝访问的终极解决方法就是提升权限。

SPSecurity.RunWithElevatedPrivileges(delegate()
            {
               });

把所有要测试的代码抱起来,ok了

在运行一下,哈。

07还没试。谁试过了可以告诉一下。

posted on 2011-01-04 18:33  Yunliang Yu  阅读(419)  评论(0编辑  收藏  举报