PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [VB.NET] Melt Problem



eatsen
04.03.2009, 20:48
Moin, ich brauch mal hilfe. Ich habe versucht anhand einer vb6-Melting funktion, das in net zu verwirklichen. wenn ich das folgende habe geht es nicht. Aber ersetzte ich "Application.ExecutablePath" mit einem normalen Pfad z.B "C:\melt.exe" geht das ganze.


If File.Exists(Environ("tmp") & "/del.bat") Then
Kill(Environ("tmp") & "/del.bat")
End If
Dim Meltwriter As New StreamWriter(Environ("tmp") & "/del.bat")
Meltwriter.WriteLine("@echo off")
Meltwriter.WriteLine("sleep 500")
Meltwriter.WriteLine("del " & Application.ExecutablePath)
Meltwriter.WriteLine("del " & Environ("tmp") & "/del.bat")
Meltwriter.Close()

Process.Start(Environ("temp") & "/del.bat", AppWinStyle.Hide)
Me.Close()

Wo liegt der fehler? kann mir jemand helfen?

Sirect
04.03.2009, 21:05
Statt:
(Environ("tmp")

Machste:


Environment.GetFolderPath(Environment.SpecialFolde r.System)

eatsen
05.03.2009, 11:49
nein funktioniert leider nicht .. :(
Wie gesagt:
ersetze
"del " & Application.ExecutablePath" durch einen normalen Pfad wie z.B "del C:\melt.exe" dann funzts prima.. ersetze ich ihn aber durch einen längeren pfad funktionierts wieder nicht :(
liegt das an batch?

Sawyer
05.03.2009, 12:26
nein funktioniert leider nicht .. :(
Wie gesagt:
ersetze
"del " & Application.ExecutablePath" durch einen normalen Pfad wie z.B "del C:\melt.exe" dann funzts prima.. ersetze ich ihn aber durch einen längeren pfad funktionierts wieder nicht :(
liegt das an batch?

Also ich weiß nicht was du hast , dein obriger Code funktioniert bereits , grad getestet

Prüfe nochmal ob es wirklich nicht geht , kann nämlich nicht sein ;)

edit:

könnte tatsächlich an batch liegen , ka jedenfalls mag er anscheinend keine langen Pfade
http://img.xrmb2.net/images/610147.png


MfG

heatshock
06.03.2009, 13:05
mann kann ein programm schlecht Löschen wenn es noch ausgeführt wird..
erhöhe das sleep mal auf 5000 dann sollte es gehen..