Ich habe Folgendes Problem ich habe diesen Code gefunden und der Funktioniert auch mit Pfad Angabe (z.B: C:/ or D:/), ich möchte jetzt aber nicht erst ein Pfad angeben sonder den direkten Pfad (./) eintragen aber das geht so nicht :O
Code:
Dim sc As New Shell32.Shell()
IO.Directory.CreateDirectory("./test")
Dim output As Shell32.Folder = sc.NameSpace("./test")
Dim input As Shell32.Folder = sc.NameSpace("./ZipFile.zip")
output.CopyHere(input.Items, 4)
(Beim Testlauf erscheint der Fehler: Eine nicht behandelte Ausnahme des Typs "System.NullReferenceException" ist aufgetreten)
So Funktioniert es nicht, wenn ich jetzt aber C:/test und C:/ZipFile.zip angebe geht es. Funktioniert das auch irgendwie so das der den Pfad nimmt wo die EXE drin ist??(Standard: ./)
in der folgenden kleinen testanwendung ist My.Application.Info.DirectoryPath um den faktor 30-50 schneller als der via Reflection das zu machen. Reflection ist zwar schön und inovativ aber auch sehr langsam und sollte vermieden werden wenn es auch einen anderen Weg gibt
Code:
Sub Main()
Dim sw As Stopwatch = New Stopwatch
sw.Start()
Dim p1 As String = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase)
sw.Stop()
Dim sw2 As Stopwatch = New Stopwatch
sw2.Start()
Dim p2 As String = My.Application.Info.DirectoryPath
sw2.Stop()
Console.Out.WriteLine(p1 & vbCrLf & sw.ElapsedMilliseconds & vbCrLf)
Console.Out.WriteLine(p2 & vbCrLf & sw2.ElapsedMilliseconds & vbCrLf)
Console.In.ReadLine()
End Sub
ich möchte ein Code haben der z.b die test.zip Datei in den neu erstellten Ordner test Entpackt für eine Windows Form Anwendung, die ich mit einem Button starten kann ...
Bitte schreibt die Namen GROSS die ich noch ändern muss den durch diese Codes die ihr mir geschickt habt Check ich gerade nicht durch
Dim sc As New Shell32.Shell()
Dim myDirectory As String = GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase)
Dim path as String = Path.Combine(myDirectory,"test")
If Not Directory.Exists(path)
IO.Directory.CreateDirectory(path)
End If
Dim output As Shell32.Folder = sc.NameSpace(path)
Dim input As Shell32.Folder = sc.NameSpace(Path.Combine(myDirectory,"ZipFile.zip"))
output.CopyHere(input.Items, 4)
Habs nicht getestet, aber so in etwa müsste das aussehen
:/ habe aber jetzt ein anderen Code der macht zumindest schon mal 50% von dem was ich will.
nur das ich noch Manual die Datei auswählen muss ist blöd
Öffnet zwar den Richtigen Pfad, aber sollte schon den Pfad nehmen wo die exe drin ist und automatisch die Datei test.zip entpacken
so wie der Code jetzt ist muss ich die noch selber Auswählen
Code:
Using ofd As New OpenFileDialog
ofd.Filter = "ZipFile|*.zip"
If ofd.ShowDialog = Windows.Forms.DialogResult.OK Then
Dim file As String = ofd.FileName
Dim cu As New ClassUnzip(file, Path.Combine(Path.GetDirectoryName(file), "unzip_folder"))
AddHandler cu.UnzipFinishd, AddressOf Unziped
cu.UnzipNow()
End If
End Using
Code:
Private Sub Unziped()
MessageBox.Show("Unzipping finished")
End Sub
evtl versteht man es so besser:
Ich Drücke den Button,
Es sucht selber die Datei "test.zip" in den Pfad wo die "EXE" drin ist.
und entpackt diese in den "test" Ordner
C#. Unzip a .7z file 12/28/2012 - .NET Languages - 2 Replies Hi all.
i need a dll or a code to unzip .7z file.
Tnx
Unzip problem 12/01/2012 - .NET Languages - 0 Replies Hey,
ich bin es mal wieder mit einem Problem
Ich habe im Internet diese Klasse hier gefunden.
Imports Shell32
Imports System
Imports System.IO
[Problem]Habe ein Problem und zwar spinnt mein VPC etwas(ohne Grund)?! 07/28/2011 - Metin2 Private Server - 10 Replies Also wie schon gesagt meins Server spinnt wodurch kiks usw. kommen :(
ich lade euch die Screens in den Anhang, mit der Hoffnung, dass ihr mir helfen könnt :) wäre echt sehr nice :)
How to Unzip the Rappelz Models 06/11/2011 - Rappelz - 4 Replies Hey there ;) I'm actually trying to get the Rappelz Client Archives Unzipped so I can start playin around with the whole client and maybe make some new weapons ect.
But I googled 2 hours now and didn't found anything.. any help?