私は、Vista SP1にSoftware Update for Web Folders (KB907306)をインストールするまで、うまくいきました。私はWebDAVとFPSE/WECサーバーへのアクセスのためにMSDAIPP.DSOプロバイダーでADOを使用しています。VistaでMSDAIPPが壊れています.Wind7Betaで見つからない
クリーンなXP SP3インストールでは同じコードが正常に動作し、このアップデートより前に動作しました(クリーンインストールでは再検証します)。
短いテストケース(IPPTest.wsfという名前のWSHスクリプト)は、次のとおりです。
<job>
<reference object="ADODB.Connection"/>
<object id="cnIPP" progId="ADODB.Connection"/>
<object id="rec" progId="ADODB.Record"/>
<object id="stm" progId="ADODB.Stream"/>
<script language="VBScript">
Option Explicit
Const WEBROOT = "https://your.DAC-or-WEC.server"
Const USER = "youruser"
Const PW = "yourpw"
Const TEXTFILE = "yourtextfile.txt"
cnIPP.Open "Provider=MSDAIPP.DSO;Prompt=NoPrompt;" _
& "Connect Timeout=10;" _
& "Data Source=" & WEBROOT, _
USER, PW, adConnectUnspecified
rec.Open TEXTFILE, cnIPP, adModeRead
stm.Open rec, , adOpenStreamFromRecord
stm.Type = adTypeText
stm.Charset = "ascii"
MsgBox stm.ReadText(adReadLine)
stm.Close
rec.Close
cnIPP.Close
</script>
</job>
それは私が例外を取得失敗した場合:まだ
---------------------------
Windows Script Host
---------------------------
Script: C:\Users\xxxxx\Desktop\IPPTest.wsf
Line: 19
Char: 8
Error: No such interface supported
Code: 80004002
Source: (null)
さらに悪いことに、私もそこまで取得することはできませんWin7 Betaで同じスクリプトを実行すると(私はまだRCをインストールしていない)。私のWin7 BetaはMSDAIPP.DLLをまったく持っていません。
VC++ 6.0で書かれたファンキーなサンプルMicrosoft Office Web Folder Client Sample (for MSDAIPP)を使って、画像からADOを削除するだけでテストしました。プリコンパイルされたEXEは、私の混乱したVista SP1およびクリーンなXP SP3では動作しますが、クリーンなWindows 7ベータ版では動作しません(「MSDAIPP.DSOを作成できません」というエラー)。何らかの奇妙な理由から、Microsoftのデモアプリケーションで空のファイルとフォルダの名前が表示されるため、ファイルをアップロード/ダウンロードしてディレクトリを正常に通過できるため、「ある程度まで」と言います。
したがって、ADDAはMSDAIPP.DSOが公開していないインターフェイスを探しているようです。
「破損した」MSDAIPP.DLLはバージョン12.0.4518.1014で、期待通りにC:\Program Files\Common Files\System\Ole DB
にあります。このVista SP1マシンには、Office 2003もインストールされています(「更新」の前に実行されています)。
だから、(最終的に)私は3つの質問があります
- を外れ、この「ソフトウェア アップデート」をバックアップする方法はありますか?それは 以上のMSDAIPP.DLLをインストールし、Microsoft にはこの "fix"のアンインストールはないと言われています。
- 修正プログラムを修正する回避策またはそれ以降の修正プログラムはありますか?
- MSDAIPPとWin7の話は何ですか? Win7RC1には存在しますか?または、 ユーザーは にOfficeをインストールする必要があります(以前はWin2Kで始まった Windowsの一部でした)?
詳細情報!
は、私が長い(長い)検索した後、次のが見つかりました:Webdav on IIS 6.0 Troubleshooting
注:Web拡張クライアント(コードネーム ローズバッド)のWindows Vistaに同梱されていない、とWebDAV機能でVista はWeb クライアントサービス(WebDAVリダイレクタ。)
Rosebudと をWindowsで問題なく動作させるために作成されたアプリケーション WindowsマシンでXPマシンが失敗することがあります。
のWebエクステンダクライアントの追加WebDAV機能は、Webフォルダ コンポーネント、MSDAIPPとしてWindows 2000 およびWindows XPで以前にさらさ をしていた、とWindowsエクスプローラ 経由し、Windows XPでWindows 2000で をアクセスされましたネットワークを追加して プレイスウィザードを使用します。 Webフォルダは で、Windows Vistaには含まれていません。 ですが、Webフォルダコンポーネントは、Microsoft Officeインストールの一部として依然として利用可能な です。 Windows VistaクライアントにOffice 2007をインストール Web Extenderが発生しています クライアント依存の接続エラー が問題を解決します。
Office 2003をインストールすることで、以前はWindowsの基本機能をVistaに追加したことが分かりました。続いてソフトウェアアップデートをインストールする(これは以前のOfficeインストールに害を及ぼさないと主張されていたが、Office 2007向け)はの機能を破った。私はこれがVistaのリリースノートにあることを思い出さない。
アップデートを動作させることができたとしても、これは作業MSDAIPPがVistaまたはWindows 7
中に存在することが予想されるすべてのプログラムのための巨大な頭痛の種になり、別のオフ話しMicrosoftはちょうど破ったように見えますVB6のホイールはMDAC/DACを破壊してこれを使用します。それは時期尚早の評価かもしれません。私は他の提案や情報を待っています。
WebDAVとFPSE/WEC経由でプログラムによるアクセスを達成するためにMicrosoftが他にどのように期待しているのでしょうか? MSDAIPP(a.k.a. Rosebud)でADOを使用する代わりに、知っておくべき新しいAPIがありますか?
クリーンなVista SP1 VMをロードし、テストしました。 Win7 Betaの場合と同じように、「プロバイダなし」エラー。これは私が推測する箱からのサポートの質問に答えます。ですから、おそらく、Office 2007のソフトウェアアップデートバージョンを修正する方法か、代わりにMSDAIPの代わりになるべきものが問題になるでしょう。 – Bob77
ここでもう少しおしゃべりしています:2008年のMSDAIPPのソフトウェアアップデート版を使用することは、限られた範囲でしかできません。 ADOを使用してディレクトリ一覧をプルしたり、ディレクトリを作成したり、ファイルやディレクトリを削除したり、空のファイルを作成したりすることもできます。一見できないことは、ストリームをファイルに開くことです。 – Bob77
これ以上詳細な質問がありましたら幸いです。ブラボー残念ながら、それは私の知識の輪の外です。 – rpetrich