Include and extract Zip

Just starting out? Need help? Post your questions and find answers here.
abc123
Enthusiast
Enthusiast
Posts: 195
Joined: Wed Apr 18, 2007 9:27 pm

Include and extract Zip

Post by abc123 »

Can some give me a code on how to include a zip file and extract it on a button click?

Thanks in advance

Heres my code:

Code: Select all

Enumeration
  #Window_0
EndEnumeration

Enumeration
  #Button_0
EndEnumeration

DataSection
Zip0:
  IncludeBinary "C:\1.zip"
EndDataSection

Procedure Open_Window_0(Title.s)
  If OpenWindow(#Window_0, 299, 267, 100, 100, Title, #PB_Window_SystemMenu | #PB_Window_ScreenCentered)

    If CreateGadgetList(WindowID(#Window_0))
      ButtonGadget(#Button_0, 5, 5, 80, 22, "&Extract", #PB_Button_Default)
    EndIf
  EndIf
EndProcedure

    Open_Window_0("Zip Extract")
    
    Repeat
    Event = WindowEvent()
    GadgetID = EventGadget()
          
    If Event = #PB_Event_Gadget
        If GadgetID = #Button_0
              PureZIP_ExtractFiles(Zip0, "*.*", "C:\1\", #True)
        EndIf
  
    EndIf
          
    Until Event = #PB_Event_CloseWindow
User avatar
netmaestro
PureBasic Bullfrog
PureBasic Bullfrog
Posts: 8433
Joined: Wed Jul 06, 2005 5:42 am
Location: Fort Nelson, BC, Canada

Post by netmaestro »

This is working here:

Code: Select all

Enumeration 
  #Window_0 
EndEnumeration 

Enumeration 
  #Button_0 
EndEnumeration 

DataSection 
Zip0: 
  IncludeBinary "d:\ziptest\ziptest.zip" 
zipend:
EndDataSection 

Procedure Open_Window_0(Title.s) 
  If OpenWindow(#Window_0, 299, 267, 100, 100, Title, #PB_Window_SystemMenu | #PB_Window_ScreenCentered) 

    If CreateGadgetList(WindowID(#Window_0)) 
      ButtonGadget(#Button_0, 5, 5, 80, 22, "&Extract", #PB_Button_Default) 
    EndIf 
  EndIf 
EndProcedure 

    Open_Window_0("Zip Extract") 
    
    Repeat 
    Event = WaitWindowEvent() 
    GadgetID = EventGadget() 
          
    If Event = #PB_Event_Gadget 
        If GadgetID = #Button_0 
          If CreateFile(0, "c:\ziptest.zip")
            WriteData(0, ?zip0, ?zipend-?zip0)
            CloseFile(0)
            If PureZIP_ExtractFile("c:\ziptest.zip", 1, "c:\", #True)
              MessageRequester("Status:","Zip extraction succeeded!")
            Else
              MessageRequester("Status:","Zip extraction failed!")
            EndIf
            DeleteFile("c:\ziptest.zip")
          EndIf
        EndIf 
  
    EndIf 
          
    Until Event = #PB_Event_CloseWindow
BERESHEIT
abc123
Enthusiast
Enthusiast
Posts: 195
Joined: Wed Apr 18, 2007 9:27 pm

Post by abc123 »

Thanks!
Post Reply