Avatar billede wookie Nybegynder
15. august 2001 - 09:41 Der er 6 kommentarer og
1 løsning

finde brugernavn i windows.

Jeg står og mangler noget kode (så simpelt som muligt) der kan hente brugernavnet på maskinens nuværende bruger og skrive denne information ud på standart out. Programmet skulle gerne fungere på 95/98, ME, NT, og 2000 hvis det kan lade sig gøre.
Da jeg gerne skulle lære noget af dette er kildekode at foretrække.
Jeg havde selv forestillet mig følgende struktur for programmet:
En klasse med en enkelt public metode der returnerer brugernavnet i en streng, samt en klasse med main metoden som opretter et objekt af førnævnte klasse, kalder metoden, og skriver resultatet ud på standart out.
Avatar billede borrisholt Novice
15. august 2001 - 09:43 #1
Brug GetUserName()

Jens B
Avatar billede borrisholt Novice
15. august 2001 - 09:45 #2
wookie>> Hvilken compiler bruger du ?

Jens B
Avatar billede wookie Nybegynder
15. august 2001 - 09:51 #3
Nu er jeg ikke så stiv i C++ så jeg vil meget gerne have en lidt mere udførlig forklaring (er vandt til Java... godtnok ligner syntaksen C++ en del men det er ikke helt det samme alligevel).
Jeg bruger MS visual C++ 97.
Hvis du ved om dette også kan løses i ren java ville det være endnu bedre.
Avatar billede borrisholt Novice
15. august 2001 - 09:53 #4
Hvid du ved hvordan man kalder windows API\'en i JAVA er det vel  let nok ?

Jens B
Avatar billede wookie Nybegynder
15. august 2001 - 09:59 #5
Har lige siddet og kigget i suns java API doc men kunne umiddelbart ikke finde hvad jeg søgte...
Avatar billede borrisholt Novice
15. august 2001 - 10:03 #6
Inden vi går i gang skal du være opmærksom på C++ ikke har et etenligt streng begreb, men deri mod bruger er array af chars. når der kommer et NULL char(0) så er strengen slut.

du starter med at oprette en ny Win32 Console App.

så skriver du :

#include <windows.h>

int main(int argc, char* argv[])
{
  DWORD Size = 200; //Længden på vores streng
  char buf[200]; // Erklær en ny \"streng\"
  GetUserName(&buf[0],&Size); //Kald windows funktionen GetUserName(), med vores streng
//Det hele er referencer til variablerne .. Når funktionen er kaldt ligger brugernavnet
//i Buf. Og antallet af karekterer, altså længden af strengen i Size
  printf(\"UserName : %s\\n\", buf); //skriv det ud på skærmen.
  return 0;
}

Jens B
Avatar billede wookie Nybegynder
15. august 2001 - 10:05 #7
Fornemt :) !!!!! mange tak :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester