タイトル : 【10/24 修正】WindowsXP標準機能でのZip作成について 投稿日 : 2008/10/23(Thu) 07:25 投稿者 : 花ちゃん
> > >c = objShell.NameSpace("C:\Test\test") > > objShell はどこからでてきたの? > aの間違いです。すいません。 そこだけではないでしょう、これだけのコードで4ヶ所程間違っていたら...。 (私は、投稿された文からしか貴方を判断できないので) >いえ、setが抜けたくらいです。vb6とvb2005のウイッチで見ています。 VB6.0 で動くなら、投稿されたコードそのままでset を付けて動かして見て下さい。 多分同じエラーがでるはずです。 そもそもどのようなエラーがでているかも書いていないし、VB6.0 とVB2005 の 実行環境は、同一環境での話なのですか? 上記コードに於けるファイル類(フォルダ含む)の前提条件はどのようになって いるのかは、これを見ている人には解らないし。(どこまで信用できるのかも) VB6.0 で動作確認したコードをそのままペーストしたら自動的に修正されて問題なく 動作するはずですが。(投稿されたコードの部分だけなら) 下記を試した限りでは、C:\Test\test.zip 内に C:\Test\test\test.txt ファイルが 圧縮されましたが。 Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click Dim a As Object Dim b As Object Dim c As Object Dim d As Object a = CreateObject("Shell.Application") b = a.NameSpace("C:\Test\test.zip") c = a.NameSpace("C:\Test\test") d = c.ParseName("test.txt") b.CopyHere(d) End Sub 動作確認環境 WindowsXP VB2005 IE7.0 Windows Vista VB2008 IE7.0 但し、上記コードは、投稿されたコードを試しただけなので、そのままでは実使用は Marshal.ReleaseComObject での解放処理ができていませんので、動作の保証はできません。 # 1週間悩んでいて質問した割には、前回同様、解決できれば返事無しですか?(10/24 7:20) |