File downloaden + Map maken en file verplaatsen (VB.Net)

Status
Niet open voor verdere reacties.

Danielxmovies

Gebruiker
Lid geworden
8 okt 2011
Berichten
300
Hallo allemaal,

Ik heb weer een probleem waar ik niet uit kom.

Ik heb een programmatje maar ik wil dat ie hem opslaat in user's appdata folder en dan Roaming en dan .minecraft

en dat ie dan in .minecraft ook nog een map maakt en een ander bestand in .minecraft daar in zet.

Kan iemand me alsjeblieft helpen.

Dit is voor het opslaan de code maar hij doet het nog steeds niet.

[CPP] My.Computer.Network.DownloadFile("MY URL", Environ("AppData") + "\Roaming\.minecraft\bin")
My.Computer.Network.DownloadFile("Map URL", Environ("AppData") + "\Roaming\.minecraft\saves")[/CPP]
 
Deze zou het wel moeten doen

Aha ik weet al waar jouw fout zit. Environ("AppData") is eigenlijk "C:\Users\%USERNAME%\AppData\Roaming" dus wat jij gedaan hebt is hem nog eens een map roaming laten aanmaken met een nieuw '.minecraft' enzo
ps: dit was toch mijn fout toen ik het uit teste.
Dit is wat ik nu heb & het werkt

Voeg de gebruikte imports toe:
[CPP]
Imports System
Imports System.Net
Imports System.IO
[/CPP]

voeg de declarations toe:
[CPP]
Dim webclient As New WebClient()
[/CPP]

code voor het downloaden enzo:
[CPP]
If Not Directory.Exists(Environ("AppData") + "\.minecraft\bin") Then
Directory.CreateDirectory(Environ("AppData") + "\.minecraft\bin")
End If
If Not Directory.Exists(Environ("AppData") + "\.minecraft\saves") Then
Directory.CreateDirectory(Environ("AppData") + "\.minecraft\saves")
End If

webclient.DownloadFileAsync(New Uri("Jouw url hier"), Environ("AppData") + "\.minecraft\bin")
webclient.DownloadFileAsync(New Uri("jouw url hier"), Environ("AppData") + "\.minecraft\saves")
[/CPP]

Ik hoop dat het helpt
 
Jah tot nu toe is ie goed!!!

Maar ik wil ook dat ie een bestand verplaatst van bin naar een andere
 
Vervolg :DD

Jah tot nu toe is ie goed!!!
Okee ;D

Maar ik wil ook dat ie een bestand verplaatst van bin naar een andere
Dan zou ik deze gebruiken:
[CPP]
Dim bestandnaam As String = "jouw_bestand_hier.txt"

File.Copy(Environ("AppData") + "\.minecraft\bin\" + bestandnaam, "plaats waar het naartoe gekopiëerd moet worden hier.")
[/CPP]

Dit is voor copy maar moest je nu toevallig naar de cut(knippen) functie zouken. (ik weet niet of die bestaad maar dan moet je dit lijntje er nog aan toe voegen:
[CPP]
File.Delete(Environ("AppData") + "\.minecraft\bin\" + bestandnaam)
[/CPP]

Hopelijk beantwoord deze de vraag volledig ;D
 
Oke Ik zal zo kijken :)

Behalve het downloaden hij zegt:

Error 2 Reference to a non-shared member requires an object reference. C:\Users\Daniel\documents\visual studio 2010\Projects\Island Craft Installer\Island Craft Installer\Home.vb 32 9 Island Craft Installer
 
Laatst bewerkt:
Oops bijna vergeten: je moet de reference webclient toevoegen aan het project.
 
  • Jij krijgt deze fout code:
    Error 2 Reference to a non-shared member requires an object reference. C:\Users\Daniel\documents\visual studio 2010\Projects\Island Craft Installer\Island Craft Installer\Home.vb 32 9 Island Craft Installer

    Maar wat staat er in Home.vb lijn 32?
  • Je kan reference's toevoegen op deze manier ->

PS: Ik begin te twijfelen welke reference dus zou het handig zijn dat je me eerst zegt wat er op Home.vb lijn 32 staat.

BdpLu.png
 
Oke dat is goed :thumb:

laat me weten als er nog problemen\vragen zijn :D
 
Laatst bewerkt door een moderator:
Nu heb ik andere code zodat progressbar werkt maar hij doet een bestand niet downloaden vanwege concurrentie met i/o
 
Normaal kan je dit toch perfect met de progressbar & webclient ik denk dat het deze event is webclient_downloadprogresschanged en dan gewoon simpel progressbar = e.iets me percentage.

Daardoor moet je de code niet meer vervangen en werkt de download + de progressbar ;D

Maar als je wil kan je altijd de code die je nu hebt posten en dan kijk ik er wel eventjes naar ;D
 
Code

Oke hier is de complete code.

letiop hij is best lang:

[CPP]Imports System.IO
Imports System
Imports System.Net
Imports Ionic.Zip



Public Class Home
Dim WithEvents WC As New WebClient
Dim request As WebRequest = WebRequest.Create("http://dl.dropbox.com/u/46890213/Island%20Craft/version.txt")
Dim bestandnaam As String = "minecraft.jar"
Dim response As WebResponse = request.GetResponse
Dim reader As StreamReader = New StreamReader(response.GetResponseStream())
Dim stext As String = reader.ReadToEnd
Private WithEvents Downloader As WebClient
Private WithEvents httpclient As WebClient



Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If Not Directory.Exists(Environ("AppData") + "\.minecraft\Backup") Then
Directory.CreateDirectory(Environ("AppData") + "\.minecraft\Backup")
End If
If File.Exists(Environ("AppData") + "\.minecraft\Backup\minecraft(Old jar).jar") Then

Else
My.Computer.FileSystem.MoveFile(Environ("AppData") + "\.minecraft\bin\minecraft.jar", _
Environ("AppData") + "\.minecraft\Backup\minecraft(Old jar).jar", _
FileIO.UIOption.AllDialogs, _
FileIO.UICancelOption.ThrowException)



End If

If File.Exists(Environ("AppData") + "\.minecraft\saves\Island_Craft.zip") Then



Else
WC.DownloadFileAsync(New Uri("http://dl.dropbox.com/u/46890213/Island%20Craft/Island_Craft.zip"), Environ("AppData") + "\.minecraft\saves\Island_Craft.zip")





End If
WC.DownloadFileAsync(New Uri("http://dl.dropbox.com/u/46890213/Island%20Craft/minecraft.jar"), Environ("AppData") + "\.minecraft\bin\minecraft.jar")
End Sub

Private Sub Home_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Label2.Text = "Version: "
Label3.Text = stext

End Sub



Private Sub Extractor_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Extractor.Tick
Dim ZipToUnpack As String = Environ("AppData") + "\.minecraft\saves\Island_craft.zip"
Dim UnpackDirectory As String = Environ("AppData") + "\.minecraft\saves\"
Using zip1 As ZipFile = ZipFile.Read(ZipToUnpack)
Dim XD As ZipEntry
' here, we extract every entry, but we could extract conditionally,
' based on entry name, size, date, checkbox status, etc.
For Each XD In zip1
XD.Extract(UnpackDirectory, ExtractExistingFileAction.OverwriteSilently)
Next



End Using
End Sub

Private Sub Version_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Version.Tick

End Sub

Private Sub WC_DownloadProgressChanged(ByVal sender As Object, ByVal e As System.Net.DownloadProgressChangedEventArgs) Handles WC.DownloadProgressChanged
ProgressBar1.Value = e.ProgressPercentage
If ProgressBar1.Value = ProgressBar1.Maximum Then
Extractor.Start()
End If
End Sub
End Class
[/CPP]
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan