VB6.0でファイルを圧縮して違うファイルにコピーするような事はできるでしょうか??
LHA 圧縮などを求めるのであれば、unlha32.dll 等の
外部コンポーネントを使うことになるでしょう。
また、運用ベースの回避で良いのであれば、フォルダを右クリックして
属性の[詳細設定]ボタンを押せば、圧縮属性を持ったフォルダを
作成できます。(WinXPの場合)
で、圧縮属性を持ったフォルダに対して書き込み/コピーすれば、
ファイルは自動的に圧縮されますので、それで回避するとか。
たぶんこのURLを参考にすればできると思いますよ。
http://www.asahi-net.or.jp/~ef2o-inue/download/sub09_020_060.html
早速のありがとうございます。
やはり可能なんですね。
zipコマンドをどうかずるんですか??
zip圧縮であれば、こちらで。
http://www.asahi-net.or.jp/~ef2o-inue/download/sub09_020_065.html
いちいちタイトルに「初心者」ってつけるなら、初心者掲示板もありますが。
http://madia.world.coocan.jp/cgi-bin/VBBBS2/wwwlng.cgi
>いちいちタイトルに「初心者」ってつけるなら、初心者掲示板もありますが。
いや、初心者掲示板にも気がつかないところから、
本当に初心者なんだな〜と、初心者らしさが現れているじゃないですか。
アドバイスありがとうございます。
ネットや参考書を参考に作ってみたのですが、何か違うみたいなので
教えて下さい。
BBとDDのファイルを圧縮してAにコピーしたいです。
Private Sub Form_Load()
Dim scfilepath As String
Dim destfilepath As String
Dim filename As String
Dim strcmd As String
Dim strDir As String
Dim fso As New FileSystemObject
Dim i As String
scfilepath = SourceFilePath
destfilepath = "C:\A"
' 'フォルダが存在すれば削除する。
' If fso.FolderExists(destfilepath) Then
' fso = DeleteFolder(destfilepath, True)
' End If
filename = "C:\BB" & "C:\DD" & ".zip"
' 'ファイルが存在すれば削除する。
' If fso.FileExists(filename) Then
' fso = DeleteFile(filename, True)
' End If
'機材VSSをローカルコピーする。
fso = Copy.Folder(scfilepath, destfilepath)
''圧縮
strcmd = "zip -r " & filename & " " & destfilepath
i = Shell(strcmd, AppWinStyle.Hide, True)
If fso.FileExists(filename) Then
fso = CopyFile(filename, SourceBackupFilePath & "\" &A&sDATE& ".zip")
End If
End Sub
んー・・・
「zip」という拡張子のない実行形式ファイルに処理を丸投げするコードのようです
これではまず動かないかと
Winzip32.DLL辺りを組み込んで自前で処理するようにしましょう
'OJTL100.XLSってファイル名から、OJT中なのかと思っていましたが、
'周囲の誰にも聞かずにネットに頼るのはOJTといえません。
'ちょっと周りの人にコードを見てもらってください。
'それとも放置されてる?
> Dim fso As New FileSystemObject
> fso = Copy.Folder(scfilepath, destfilepath)
コンパイルエラーになっていませんか?
> filename = "C:\BB" & "C:\DD" & ".zip"
Debug.Print filename
Debug.Print strcmd
として、イミディエイトウィンドウを確認しましょう。
おかしいと思ったらブレークポイントを置いて1行づつデバッグしましょう。
> Dim i As String
> i = Shell(strcmd, AppWinStyle.Hide, True)
戻り値が変ですし、AppWinStyleはVB6じゃなかったかと(.NETでは?)。
ツイート | ![]() |