visualbasic
Goto Top

Speicherplatz des USB-Sticks oder der externen Festplatte mit einem Speicherplatz-Platzhalter verkleinern

Möchte eine Datei mit vb.net programmieren, die immer den gesamten Speicherplatz des Sticks verbraucht

Hallo
Ich würde gerne ein Programm schreiben, welches immer den gesamten Speicherplatz des Sticks verbraucht, damit sich auch keine Viren draufkopieren können.
Ich habe schon ein Programm geschrieben (sehr störanfällig), dass immerhin einiges vollmacht:

<code vb>
Do
My.Computer.Filesystem.WriteAllText([Jetzt hier 65.000 Zeichen], True)
Loop

Content-ID: 190434

Url: https://administrator.de/contentid/190434

Ausgedruckt am: 24.11.2024 um 07:11 Uhr

Lochkartenstanzer
Lochkartenstanzer 29.08.2012 aktualisiert um 15:34:35 Uhr
Goto Top
mon,

Wie kommst Du drauf, das der Virus/Trojaner drum schert, ob da noch Platz auf dem Stick ist, wenn er da drauf will? das ist wie mit den Rowdies in Bussen und Bahnen: Da wird einfach jemand anders "herausgeworfen", damit man selber Platz hat.

lks

Nachtrag:

Mit einem einfachen

copy ganz-große-riesendait-vielleicht-eine9-GB-iso STICK:

bekommst Du jeden Stick voll.
visualbasic
visualbasic 29.08.2012 um 15:44:07 Uhr
Goto Top
Zitat von @Lochkartenstanzer:
Mit einem einfachen

> copy ganz-große-riesendait-vielleicht-eine9-GB-iso STICK:
> 

der stick hat 32 GB


Bleib mal ernsthaft
wiesi200
wiesi200 29.08.2012 um 15:54:40 Uhr
Goto Top
Mal ernsthaft glaub ich kaum das es den gewünschten Effekt kriegt.

Ich würd mir da eher einen Stick zulegen den man per Schalter einen Schreibschutz verpassen kann.
it-frosch
it-frosch 29.08.2012 um 15:55:58 Uhr
Goto Top
Hallo visualbasic,

ich würde so an die Aufgabe herangehen:

1. Programm ermittelt den USB Stick und dessen freien Speicherplatz.
2. Programm schreibt auf den USB Stick eine Datei die genau so groß wie der leere Speicherplatz ist.

Lochkartenstanzer hatte dir den Tip gegeben, wenn die Größe der USB Sticks bekannt ist, eine ISO Datei der gleichen Größe auf den Stick zu kopieren was das gleiche Ergebnis bringt.

Ob du damit einen Schutz vor Viren hast, hängt von deren Programmierung ab.

grüße vom it-frosch
visualbasic
visualbasic 29.08.2012 um 15:56:51 Uhr
Goto Top
Kannst du mir trotzdem helfen?
Ich will auch mal bissl rumexperiemntieren; oder meinen bruder ärgern, dass sein stick voll ist (der hat nur 4 GB).
visualbasic
visualbasic 29.08.2012 um 16:00:40 Uhr
Goto Top
Zitat von @it-frosch:
Hallo visualbasic,
1. Programm ermittelt den USB Stick und dessen freien Speicherplatz.
Wie mach ich das?

2. Programm schreibt auf den USB Stick eine Datei die genau so groß wie der leere Speicherplatz ist.
Wie das?


Lochkartenstanzer hatte dir den Tip gegeben, wenn die Größe der USB Sticks bekannt ist, eine ISO Datei der gleichen
Größe auf den Stick zu kopieren was das gleiche Ergebnis bringt.
Warum unbedingt ISO?

grüße vom it-frosch
chaotize
chaotize 29.08.2012 um 16:01:19 Uhr
Goto Top
Hallo visualbasic,

wie Lochkartenstanzer schon gesagt hat würde es dir nicht wirklich viel nutzen den Stick mir 32gb voll zu knallen bis auf das eine 32gb übertragung mehr als eine halbe stunde braucht und du danach nen vollen Stick hast den dann eh kein mensch mehr gebrauchen kann. Wenn ihn dann niemand mehr gebrauchen kann wieso sollte man ihn dann an einen PC anschließen und wenn man ihn nicht am pc anschließt hat man auch keine Viren darauf.
Nun ja ich schweife ab fakt ist, dass Viren sich gerne in partitionen fest setzen die du eh nicht beschreiben kannst oder sie löschen einfach irgendwas und setzen sich da rein.
visualbasic
visualbasic 29.08.2012 um 16:06:03 Uhr
Goto Top
Ja, aber kann ich trotzdem irgendwas machen, was so ähnlich ist wie

timer1.interval=1
Private Sub Timer1_Tick() Handles Timer1.Tick
        My.Computer.FileSystem.WriteAllText("C:\vollschreiben", [[65.000 Stellen]], True)  
    End Sub
wiesi200
wiesi200 29.08.2012 um 16:13:45 Uhr
Goto Top
Für was brauchst du denn da den Timer?
Und Bruder ärgern. Der löscht die Datei und gut ist.
visualbasic
visualbasic 29.08.2012 um 16:31:24 Uhr
Goto Top
Zitat von @wiesi200:
Für was brauchst du denn da den Timer?
Der Timer schreibt jede 1000stel-Sekunde 65.000 Zeichen in die Datei

Und Bruder ärgern. Der löscht die Datei und gut ist.
Nicht wenn ich ein
if file exist then 
[mach datei]

Also was kann ich machen?
Lochkartenstanzer
Lochkartenstanzer 29.08.2012 aktualisiert um 16:41:27 Uhr
Goto Top
Zitat von @visualbasic:
Bleib mal ernsthaft

Ich bin ernsthaft.
Wenn ich ein späßeken hätte machen wollen, hätte ich gesagt, pack den Stick in einen Pariser. Dann kommen keine Viren dran.

Zum Befüllen:

Dann starte einfach von einer linux-CD/einem linux-Stick und tippe:

dd if=/dev/zero of=/media/pfad-zum-stick/leere-datei-zum-fuellen

Damit knallst du dann deinen Stick bis zum letzten byte "voll", auch denn das nicht sinnvoll ist und außerdem deinen Stick langsam macht.

lks
wiesi200
wiesi200 29.08.2012 um 16:39:47 Uhr
Goto Top
Kein Wunder das die Software "sehr störanfällig" ist.
Zum einen du musst erkenn wie große der freie Platz ist.
Wir vielleicht auch mal Google an.

Dann darf da es ja noch FAT gibt deine Datei nicht größer als 4GB sein.
Sprich du musst eigentlich die freie Größe durch 4GB teilen eine entsprechende Anzahl an dateien erzeugen und dann noch eine zusätzlich

Die Datei solltest du so "vernünfiger" erstellen können.
Public Sub MakeDummyFile(ByVal FileName As String, ByVal FileSize As Long)
    Dim FS As New FileStream(FileName, FileMode.Create)
    FS.SetLength(FileSize)
    FS.Close()
End Sub

Was soll das mit
if file exist

vor dem löschen schützt das überhaupt nicht.
Lochkartenstanzer
Lochkartenstanzer 29.08.2012 um 16:44:08 Uhr
Goto Top
Zitat von @visualbasic:
Warum unbedingt ISO?

Weil das i.d.R. große dateien sind. Du kannst Die aber auch auf der Platte eine Große datei erzeugen und die nehmen.

lks
visualbasic
visualbasic 29.08.2012, aktualisiert am 30.08.2012 um 07:19:36 Uhr
Goto Top
Zitat von @wiesi200:
Kein Wunder das die Software "sehr störanfällig" ist.
is mir klar

Dann darf da es ja noch FAT gibt deine Datei nicht größer als 4GB sein.
Sprich du musst eigentlich die freie Größe durch 4GB teilen eine entsprechende Anzahl an dateien erzeugen und dann noch
eine zusätzlich
Unsere Sticks sind alle NTFS

Die Datei solltest du so "vernünfiger" erstellen können.
> Public Sub MakeDummyFile(ByVal FileName As String, ByVal FileSize As Long)
>     Dim FS As New FileStream(FileName, FileMode.Create)
>     FS.SetLength(FileSize)
>     FS.Close()
> End Sub
> 
Danke

Was soll das mit
> if file exist
> 

vor dem löschen schützt das überhaupt nicht.
Stimmt


EDIT
Ich wollte ja eigentlich schon hier den Beitrag als Gelöst markieren; dann mache ichs halt jetzt face-smile
EDIT
Lochkartenstanzer
Lochkartenstanzer 29.08.2012 um 16:46:14 Uhr
Goto Top
Zitat von @visualbasic:
... meinen bruder ärgern, ...

Hier ist kein Kindergarten.

Bei Heise findest Du ein passenden Programm. Ich hätte Dir normaerweise zar den Namen und den Link gesagt, aber wenn das eh nur zu ärgern ist, brauchst Du es offensichtlich nicht.


lks
visualbasic
visualbasic 29.08.2012 um 16:48:42 Uhr
Goto Top
Zitat von @Lochkartenstanzer:
> Zitat von @visualbasic:
> ----
> ... meinen bruder ärgern, ...
Bei Heise findest Du ein passenden Programm. Ich hätte Dir normaerweise zar den Namen und den Link gesagt, aber wenn das eh

ich will selber programmieren und ich programmier nicht nur um meinen bruder zu ärgern (der ist 12)
Lochkartenstanzer
Lochkartenstanzer 29.08.2012 aktualisiert um 17:10:26 Uhr
Goto Top
Dann schreibe einfach ein Programm, das beliebig viele zeichen ausgibt, bis es abgebrochen wird oder auf einen fehler läuft.

Nach dem Motto:
wiederhole 
  Gebe-zeichen-aus("X");
Solange kein fehler;


was ist das Problem?

lks
wiesi200
wiesi200 29.08.2012 um 17:25:33 Uhr
Goto Top
Zitat von @visualbasic:
> Dann darf da es ja noch FAT gibt deine Datei nicht größer als 4GB sein.
> Sprich du musst eigentlich die freie Größe durch 4GB teilen eine entsprechende Anzahl an dateien erzeugen und dann
noch
> eine zusätzlich
Unsere Sticks sind alle NTFS

Schau her, und so wird dein Programm Fehleranfällig.
Zuerst bist du her gegangen und hast einfach in eine Datei eine gewisse Menge an Zeichen rein geschrieben bis es nicht mehr funktioniert hat. Dann hat dein Programm abgebrochen.
Wenn du was lernen willst solltest du immer versuchen mögliche Fehler abzuschätzen und diese zu verhindern.
Sprich es gibt die Möglichkeit das der Fehler auftaucht, also irgendwie abfangen und wenn's nur über Try / Catch ist.

An sonsten geb ich LKS recht.
it-frosch
it-frosch 29.08.2012 aktualisiert um 17:51:22 Uhr
Goto Top
Hallo visualbasic,

1. Programm ermittelt den USB Stick und dessen freien Speicherplatz.
Wie mach ich das?
Schau dir VB.NET an was es da für Funktionen gibt um so etwas abzufragen.

2. Programm schreibt auf den USB Stick eine Datei die genau so groß wie der leere Speicherplatz ist.
Wie das?
Schau dir die entsprechende Syntax von VB.NET an.

Warum unbedingt ISO?
Muss nicht unbedingt ISO sein.

Kannst du mir trotzdem helfen?
Ich will auch mal bissl rumexperiemntieren; oder meinen bruder ärgern, dass sein stick voll ist (der hat nur 4 GB).
Sorry, aber dafür habe ich keine Zeit.
Deinen Bruder zu ärgern scheint mir eine gute Motivation zu sein sich mit einer Programmiersprache auseinanderzusetzen. Allerdings bin ich mir nicht sicher, ob das allein reichen wird. face-wink

grüße vom it-frosch
60730
60730 29.08.2012, aktualisiert am 30.08.2012 um 12:31:03 Uhr
Goto Top
Moin,

Was issn hier los?

Zitat von @visualbasic:
Kannst du mir trotzdem helfen?
Ich will auch mal bissl rumexperiemntieren; oder meinen bruder ärgern, dass sein stick voll ist (der hat nur 4 GB).

Damit aergerst Du deine Eltern, denn so ein stueck hat ne gewisse lebensdauer, die sicherlich nicht laenger wird, wenn man(n) - kind passt wohl eher - mit muell vollballert....

Kauf dir nen chemiebaukasten...
mrtux
mrtux 30.08.2012 um 02:41:43 Uhr
Goto Top
Hi!

Zitat von @visualbasic:
Bleib mal ernsthaft

Ich frage mich warum Du meinst, dass er das nicht ernsthaft gemeint hat? Um einen Stick zu füllen braucht man keine VB Anwendung und deine Annahme, dass ein Stick sicher vor Malware wäre, nur weil er voll ist, ist völliger Unsinn.

Und jetzt bin ich mal ernsthaft: Das ist hier ein Forum für Administratoren und nicht für "Ich möchte was basteln mit dem ich meinen Bruder ärgern kann" - Forum.

Wenn Du ernsthaft VB lernen willst, dann such die nötigen Infos im Netz zusammen oder besorge Dir ein Buch darüber. Und wenn Du die grundlegenden Dinge über VB und das I/O Handling gelernt hast, dann können wir Dir hier gerne bei den Detailfragen helfen.

mrtux
visualbasic
visualbasic 30.08.2012 um 07:14:48 Uhr
Goto Top
Zitat von @wiesi200:
Sprich es gibt die Möglichkeit das der Fehler auftaucht, also irgendwie abfangen und wenn's nur über Try / Catch
ist.

Ich kenne mich mit
Catch ex as Exception
sehr gut aus! Meistens verschachtele ich sie ineinander wie eine HTML-Seite!
visualbasic
visualbasic 30.08.2012 um 07:16:55 Uhr
Goto Top
Zitat von @mrtux:
Hi!
Wenn Du ernsthaft VB lernen willst, dann such die nötigen Infos im Netz zusammen oder besorge Dir ein Buch darüber.
mrtux
Hab ich schon! Das Openbook von Galileocomputing lese ich so oft
MonoTone
MonoTone 30.08.2012 um 10:32:15 Uhr
Goto Top
Zitat von @visualbasic:
Hab ich schon! Das Openbook von Galileocomputing lese ich so oft

Das Buch ist nicht sonderlich gut und dennoch hättest du diese Frage nicht gestellt, wenn du es gelesen und verstanden hättest.
visualbasic
visualbasic 30.08.2012 um 11:18:53 Uhr
Goto Top
Zitat von @MonoTone:
Das Buch ist nicht sonderlich gut und dennoch hättest du diese Frage nicht gestellt, wenn du es gelesen und verstanden
hättest.

Was empfiehlst du mir dann?
kontext
kontext 30.08.2012 um 15:08:55 Uhr
Goto Top
Zitat von @visualbasic:
Was empfiehlst du mir dann?

HeyHo,

schau mal den Thread an:
Literatur bzw. Tutorials für VBS oder PowerShell

Cheers
MonoTone
MonoTone 30.08.2012 aktualisiert um 16:30:42 Uhr
Goto Top
visualbasic
visualbasic 31.08.2012 um 08:42:07 Uhr
Goto Top
Zitat von @Lochkartenstanzer:
Mit einem einfachen

> copy ganz-große-riesendait-vielleicht-eine9-GB-iso STICK:
> 

bekommst Du jeden Stick voll.

mit
> copy www.google.com:21
> 

ebenfalls
Lochkartenstanzer
Lochkartenstanzer 31.08.2012 um 21:53:59 Uhr
Goto Top
Zitat von @visualbasic:
mit
>
> > copy www.google.com:21
> > 

ebenfalls

???

offensichtlich hast Du nicht verstanden, was ich Dir sagen wollte.
visualbasic
visualbasic 05.09.2012 um 15:21:23 Uhr
Goto Top
Ich machs jetz einfach so: ich mach den stick schreibgeschützt
Lochkartenstanzer
Lochkartenstanzer 05.09.2012 um 15:31:47 Uhr
Goto Top
Zitat von @visualbasic:
Ich machs jetz einfach so: ich mach den stick schreibgeschützt

Nimm einen Stick mit echtem Schreibschutzschalter alles andere, was per Software Schreibgeschützt wird, ist nicht sicher vor bösen Programmen. Leider gibt es kaum noch Stck mit echtem Schreibschutzschalter.

lks
visualbasic
visualbasic 05.09.2012 um 16:38:31 Uhr
Goto Top
Hab jetzt einen Stick; der für immer Schreibgeschützt ist, da er Einen MCL-Chip eingebaut hatte, der Schreibvorgänge auf 10.000 Stück beschränkt