dポイントプレゼントキャンペーン実施中!

お世話になります。

VB6でCSVファイルにパスワードをかけたいと考えています。

WINDOWS標準のZIP形式にしてパスワードをかけるのでもよいのですが
やり方が見つかりません。(VBからどうやるのか)

どなたかわかる方がいらっしゃいましたらよろしくお願いします。

すみませんが教えてください。

A 回答 (3件)

そうでしたね、パスワード付けるんですよね。


ZIP32J.DLLのAPIを使うしかないようです。
(1)下記URLからZIP32J.DLL、ZIP32.DLLを取得し、
同じフォルダに置きます。便宜上、"C:\ZIP"とします。
http://www.csdinc.co.jp/archiver/lib/zip32j.html …

(2)VBでは以下のように定義します。
Declare Function Zip Lib "ZIP32J" (ByVal hWnd As Long, _
ByVal szCmdLine As String, ByVal szOutput As String, _
ByVal dwSize As Long) As Long

(3)実際の動作
Dim ReturnCode As Long
Dim Result As String
ChDir "C:\ZIP" '* DLLのあるフォルダをカレントにする。
Result = Space(4096) '* 出力情報を受け取る領域を作成する。
'★ パスワードは xxxx で、zzzz.csv → yyyy.zip 圧縮する。
ReturnCode = Zip(0, "-P xxxx yyyy.zip yyyy.csv", Result, 4096)
If ReturnCode = 0 Then
  MsgBox "成功"
Else
  MsgBox "失敗"
End If
    • good
    • 0
この回答へのお礼

親切丁寧な回答ありがとうございました。

お礼日時:2008/08/22 00:21

XPなら下記フリーソフトで実現していることを参考にしては?


http://www.vector.co.jp/soft/winnt/util/se355605 …
この中のMakeZIP.VBSがキモなのですが、コマンドラインから実行できます。
これをWSHのRunメソッドで実行しても良いし、何と言っても平文のVBSなので、
かなりの部分を参考に出来ます。
    • good
    • 0
この回答へのお礼

回答、本当にありがとうございました。

とても助かりました。

MakeZIP.VBSをVBに組み込んでみたところうまく動きました。

たびたびで申し訳ないのですが、圧縮したZIPに対して
VBからパスワードをつける事はできますでしょうか?

お礼日時:2008/06/16 18:14

正規のwinzipを購入すればコマンドラインからイロイロできると思いますが、フリーで出回っているものでも同様の機能のものがあるかもしれません。

そのあたりを調べてみてはいかがでしょう。
    • good
    • 0
この回答へのお礼

早急な回答ありがとうございました。

調べてみます。

お礼日時:2008/06/16 18:12

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!