通过 Web 客户端服务 (webclnt.dll) 的 SharePoint。 创建文件失败
我有一个创建和编辑文档的应用程序。 我需要将其与 SharePoint 集成,以便用户可以使用我的应用程序编辑 SharePoint 服务器上的文件。 我的环境是Visual C++,非MFC Windows应用程序。
我正在尝试 Web 客户端服务 (webclnt.dll),看看是否可以通过最少的代码更改让我的应用程序正常工作。 这与记事本等配合得很好(只需给它一个共享点文档的 URL,Web 客户端拦截文件 I/O 请求并将其重定向到网络)...但我的应用程序无法使用“GetLastError”代码调用 CreateFile 123:
(ERROR_INVALID_NAME).
有人知道这是为什么吗? 我向 CreateFile 传递了该文件的有效完整 URL。 我查看了可以传递给 createFile 的选项,但没有看到任何看起来会放松文件名验证的内容。
I have an application that creates and edits documents. I need to integrate it with SharePoint, so that users can edit files on SharePoint servers using my application. My environment is Visual C++, non-MFC Windows application.
I'm trying out the Web Client service (webclnt.dll) to see if I can get my app to work with a minimum of code changes. This works brilliantly with notepad, etc (just giving it a URL to the sharepoint document, Web Client intercepts the file I/O request and redirects it out to the network)... but my application is failing calling CreateFile with "GetLastError" code of 123:
(ERROR_INVALID_NAME).
Anyone know why this is? I'm passing CreateFile a valid full URL to the file. I've looked through the options that can be passed to createFile and I don't see anything that looks like it would relax the filename validation.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
看起来问题是您无法将 URL 传递给 CreateFile。 您必须使用 GetOpenFileName 对话框,并在其中输入 URL。 然后,WebDAV 重定向器将其转换为可以传递给 CreateFile 的 URI。 然后就可以了。
It looks like the problem is that you can't pass a URL to CreateFile. You have to use the GetOpenFileName dialog, and enter a URL into that. The WebDAV redirector then converts that into a URI that can be passed to CreateFile. It works then.