vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
updater batchcreator 
Autor: CoderNachwuchs
Datum: 23.10.07 20:47

hey leute
also ich habe mir ein updater gebaut und möchte nun die alte exedatei ersetzten.
dazu habe ich diesen batchcreator gefunden
' Sub CreateBatch erzeugt eine Batch-Datei, die sofort ausgeführt wird, 
' um das laufende Programm sofort zu ersetzen, sobald es beendet wird:
' Die downgeloadete Datei wird mit der Dateiendung *.e32 "zwischengespeichert",
' die *.bat durchläuft nun in einer Schleife, ob die laufende Anwendung noch 
' benutzt wird oder nicht mehr, 
' wenn nicht, dann wird die alte Exe gelöscht und die *.e32 in *.exe umbenannt, 
' das ist der ganze Zauber 
' "http://www.vbarchiv.net/vbarchiv.net/forum/images/smileys/smiley1.gif" 
' border=0 align=absmiddle>
Private Sub CreateBatch(ByVal sFile As String, ByVal sReplace As String)
  Dim BatFile As String
  Dim sCommand As String
 
  BatFile = sFile & ".bat"
 
  If GetAttr(sReplace) Then SetAttr sReplace, 0
  Call CharToOemA(sFile, sFile)
  Call CharToOemA(sReplace, sReplace)
 
  sCommand = "@echo off" & vbCrLf
  sCommand = sCommand & "IF NOT EXIST """ & sFile & """ GOTO NoReplace" & vbCrLf
  sCommand = sCommand & ":TryDel" & vbCrLf
  sCommand = sCommand & "DEL """ & sReplace & """" & vbCrLf
  sCommand = sCommand & "IF EXIST """ & sReplace & """ GOTO TryDel" & vbCrLf
  sCommand = sCommand & "COPY """ & sFile & """ /B """ & sReplace & """ /B" & _
    vbCrLf
  sCommand = sCommand & "DEL """ & sFile & """" & vbCrLf
  sCommand = sCommand & ":NoReplace" & vbCrLf
  sCommand = sCommand & "DEL """ & BatFile & """"
 
  Open BatFile For Binary As FreeFile
  Put #1, , sCommand
  Close #1
 
  Shell BatFile, vbHide
End Sub
frage ist: warum funktioniert der bei mir nicht?
also sFile und sReplace muss ich angeben, das hab ich verstanden, aber vllt geb ichs auch falsch an?!
bisher war mein ansatz folgender:
Call Updater.CreateBatch(App.Path & "\Updater", App.Path & "\" & App.EXEName & _
  ".exe")
aber irgendwie will das nicht ganz hinhauen. was mach ich falsch? (das programm wird nach aufrufen der prozedur beendet!)
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
updater batchcreator750CoderNachwuchs23.10.07 20:47
Re: updater batchcreator555ModeratorDieter23.10.07 22:46
Re: updater batchcreator539CoderNachwuchs24.10.07 11:29

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel