Public nirgendswo verfügbar

axeos

Grünschnabel
Moin,

ich kappiere was nicht so ganz richtig. Ich schreibe gerade für meinen Kumpel ein Datensicherungsprogramm in VB 2008 Express und scheitere an der Public-Deklaration. Ich gehöre leider noch zum Newbie-Department und kriege es nicht hin, dass die Public-Variablen irgend wo anders aufgerufen werden können.

Ich habe eine Klasse aufgemacht mit der Bezeichnung "globvar" für alle globalen Variablen, welche ua HOMEDRIVEXP (vgl. echo %HOMEDRIVE% nur bei XP) darstellen soll. Da ich es nicht hin bekomme, die Umgebungsvariablen zu nutzen, muss ich sie ebenhalt definieren.

Code:
Public Class globvar

    Public HOMEDRIVEXP As String = "C:"

End Class

Code:
Public Class sichernxp

    Public Sub sichernxp_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.Label1.Text = HOMEDRIVEXP
    End Sub

End Class

So, was mache ich falsch und wenn es zu viel ist, dann bitte lieber "was mache ich richtig" ;-)

Vielleicht hat ja noch einer einen Tipp, wie ich die Windows-Umgebungsvariablen nutzen kann, sodass Me.Label1.Text = %HOMEDRIVE% ergibt

Danke
 
Hi,

um auf die Membervariablen der Klasse zuzugreifen, solltest du auch die Klasse als Referenz mit angeben. Statt
Visual Basic:
Me.Label1.Text = HOMEDRIVEXP
also eher so:
Visual Basic:
Dim g As New globvar
Me.Label1.Text = g.HOMEDRIVEXP

Und nebenbei: Visual Basic 2008 gehört zur .net-Reihe. Bitte poste es beim nächsten Mal im .net-Forum. Nur der Ordnung halber. ;)

Grüße, D.
 
Hallo, hier ein Beispiel:
Code:
MsgBox(Environment.GetEnvironmentVariable("Homedrive"))

Auslesen aller Variablen:
Code:
Dim environmentVariables As IDictionary = Environment.GetEnvironmentVariables()
        Dim de As DictionaryEntry
        For Each de In environmentVariables
            MsgBox(de.Key & "  " & de.Value)
        Next de
 
@Dario Linsky

Danke für dein Tipp und sorry für die Falsche Abteilung bin über Google hier gelandet und habe darauf nicht wirklich geachtet.

@wincnc

Dein Hinweis ist top, aber wenn ich die ausgelesen habe, was mache ich damit, bzw. wie verwende ich das ausgelesene.

Ich habe den Ordner Eigene Bilder (XP) und der wäre in Windows so definiert (meines erachtens nach)

Eigene Bilder = %HOMEDRIVE%%HOMEPATH% \Eigene Bilder
C: \Dokumente~1\Benutzer \Eigene Bilder

Wie münze ich das jetzt um in VB.NET?
 
Ich würde es eher so machen:
Code:
Dim EigeneBilder As String
EigeneBilder = Environment.GetEnvironmentVariable("Userprofile") & "\" & "Eigene Dateien\Eigene Bilder"
MsgBox(EigeneBilder)
 
Zurück