Den usernamen herausfinden

Übersicht BlitzBasic Beginners-Corner

Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.

 

Darkbyte

Betreff: Den usernamen herausfinden

BeitragFr, Jun 29, 2007 19:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi Leute,

Ich würde gerne den Usernamen bzw. Benutzername herausfinden, da ich etwas in den autostart legen möchte. Aber wie kann ich den herausfinden? Müsste das nicht mit User32 gehen? Oder gibt es da noch ein anderes Dll?
Schonmal danke für die antworten.
 

ChristianK

BeitragFr, Jun 29, 2007 20:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Das geht mit GetUserName( ) aus der advapi32.dll

GetUserName im MSDN

Als Buffer übergibst du einfach eine Bank und für Size dann eben die Größe in Byte.
Dabei kannst du übrigens ruhig großzügig sein, denn falls der Buffer kleiner ist als der Username, gibt die Funktion einen Fehler zurück.

Edit:
Sorry, aber das funktioniert wohl doch nicht. Gibt immer einen MAV, wenn die Funktion aufgerufen wird.
 

Marek

BeitragFr, Jun 29, 2007 20:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Oder du machst das einfach über die Regedit (gilt dann aber vür alle User glaube ich).
Der Pfad:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
Die nötigen Funktionen gibts hier:
Registry-Befehle
Einfach nen neuen Schlüssel erstellen und den Pfad zu deinem Programm, das du im Autostart haben möchtest, in diesem Schlüssel als string speichern. Laughing
MfG Marek
Wer lesen kann ist klar im Vorteil...
 

Darkbyte

BeitragFr, Jun 29, 2007 20:57
Antworten mit Zitat
Benutzer-Profile anzeigen
gibt es denn icht was einfacheres? Ich wollte eigentlich Nur den Namen. Dann kann ich den Pfad selber machen mit Copyfile.

*Edit*
Und warum nennt man dann überhaupt das Dll User32, wenn es noch nciht mal den Benutzernamen zurückgeben kann. (User = Benutzer)

*Edit2*
Und was ist mit diesem Befehl? Hab ich mal ausprobiert. SystemProperty("tempdir")
Bei mir gibt er an C:\DOKUME~1\REN~1\Temp\
Würde das auch gehen, halt nur dann mit Autostart?
 

Darkbyte

BeitragFr, Jun 29, 2007 21:28
Antworten mit Zitat
Benutzer-Profile anzeigen
ja es funktioniert ich habs geschafft einen Ordner im Autostart zu erstellen ^^

Damit:

Name$ = Mid$(SystemProperty("tempdir"),1,18)
NameK$ = Name$ + "Startmenü\Programme\Autostart\Test"
CreateDir NameK$
If FileType(NameK$)=2 Then
Print "Ordner ist da"
EndIf
WaitKey

Es kann aber auch sein das es nur bei mir geht. Müsst ihr mal ausprobieren. Ich teste das jetzt mal ebi meinem Bruder, hoffentlich ist es so wie ich es mir denke.
 

Darkbyte

BeitragFr, Jun 29, 2007 21:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Gut ich weis jetzt wie ich es mache, und ich umgehe die Dlls.
Ich Erklärs hier mal kurz.
Ich lese erst den Pfad von den Temporären Ordnern aus. Da der Anfang immer gleich ist, kann ich bis zu einem bestimmten Punkt lesen.
Mein Beispiel:
C:\DOKUME~1\REN~1\Temp\
von C bis zu dem ersten \ ist es überall gleich. Danach kommt REN~1 dieser Teil ist bei jedem verschieden. Ich Muss einfach nur den Teil vom ersten \ bis zum 2. \ herauslesen. dann habe ich den Namen. Aber da es leider verschieden lang ist kann ich es nicht mit einem mal mit Mid$(SystemProperty("tempdir"),1,18) herauslesen.

BladeRunner

Moderator

BeitragFr, Jun 29, 2007 21:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Solltest Du nochmal einen Double oder gar Triplepost verfassen gibt es eine Verwarnung.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group