Bosna i Hercegovina



Avko Offline
Super Moderator
Registrovan/a od: 28.05.2014-09:21
Komentari: 2,441


Subject: User Name & Local PC Name API
nikako da na forumu nadem proceduru za ispis User name
nasao sam samo ovu proceduru informacije sistema

pozivamo sa Imekorisnika= InfoSis(broj) i kada unesem broj 6 (COMPUTERNAME=comp) isto mi pokaze kao i za broj 27 (USERNAME=username), a meni se razlikuje to dvoje.
Moze se jednostavno preko winsock1.localNeme i winsock1.LocalIP ali govore da bi trebalo to izbjegavati, neznam zasto?
Mene zanima ima li nekakva APi funkcija za to.

ovo sam nasao na internetu:
DownloadIzvorni kod (Visual Basic):
  1. Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
  2.  
  3. Declare Function LookupAccountName Lib "advapi32.dll" Alias "LookupAccountNameA" (lpSystemName As String, ByVal lpAccountName As String, sid As Any, cbSid As Long, ByVal ReferencedDomainName As String, cbReferencedDomainName As Long, peUse As Long) As Long
  4.  
  5. Private Sub Form_Load()
  6.      Dim sDomainName As String * 255
  7.      Dim lDomainNameLength As Long
  8.      Dim sUserName As String
  9.      Dim bUserSid(255) As Byte
  10.      Dim lSIDType As Long
  11.  
  12.     ' Create a buffer
  13.    sUserName = String(100, Chr$(0))
  14.  
  15.     ' Get the username
  16.     GetUserName sUserName, 100
  17.  
  18.     'strip the rest of the buffer
  19.    sUserName = Left$(sUserName, InStr(sUserName, Chr$(0)) - 1)
  20.  
  21.      ' Show the temppath and the username
  22.     MsgBox "Hello " + strUserName
  23.  
  24.      lResult = LookupAccountName(vbNullString, sUserName, bUserSid(0), 255, sDomainName, lDomainNameLength, _
  25.   lSIDType)
  26.     If lResult <> 0 Then
  27.        MsgBox sDomainName
  28.     End If
  29. End Sub
ali mi javlja gresku ovdje:

Declare Function LookupAccountName Lib "advapi32.dll" Alias "LookupAccountNameA" (lpSystemName As String, ByVal lpAccountName As String, sid As Any, cbSid As Long, ByVal ReferencedDomainName As String, cbReferencedDomainName As Long, peUse As Long) As Long
Newton laže! Lake padaju brže!
↑  ↓

Gjoreski Offline
Super Moderator
Registrovan/a od: 02.02.2009-22:24
Komentari: 1,231


Subject: Re: User Name & Local PC Name API
ova e dobro za computer name

DownloadIzvorni kod (Visual Basic):
  1. Declare Function GetComputerNameA Lib "kernel32" (ByVal lpBuffer As String, nSize As Long) As Long
  2.  
  3. Public Function GetComputerName() As String
  4. Dim sResult As String * 255
  5.     GetComputerNameA sResult, 255
  6.     GetComputerName = Left$(sResult, InStr(sResult, Chr$(0)) - 1)
  7. End Function
↑  ↓

zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,364


Subject: Re: User Name & Local PC Name API
Ovo na vrhu modula
DownloadIzvorni kod (Visual Basic):
  1. Declare Function KorisnikK Lib "advapi32.dll" Alias "GetUserNameA" _
  2.    (ByVal lpBuffer As String, nSize As Long) As Long

Ovo u modulu
DownloadIzvorni kod (Visual Basic):
  1. Function ImeKorisnika() As Variant
  2. '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  3. 'FUNKCIJA ZA ITANJE IMENA KORISNIKA RA UNARA
  4. 'AutorZXZ
  5. '$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
  6.  
  7. '--------------------------------------------------------------------------------------------------------------
  8. 'TREBA DEKLARISATI OVAJ DLL (Vidi po
  9. etak modula)
  10. 'Declare Function KorisnikK Lib "advapi32.dll" Alias "GetUserNameA" _
  11. '(ByVal lpBuffer As String, nSize As Long) As Long
  12. '--------------------------------------------------------------------------------------------------------------
  13. On Error GoTo scoKorisnikK_Err
  14. Const strProcName As String = "KorisnikO"
  15. Dim intProcErrResp As Integer
  16. Dim strOSUName As String
  17. Dim lngLength As Long
  18. Dim lngResult As Long
  19.  
  20. strOSUName = String$(255, 0)
  21. lngLength = 255
  22. lngResult = KorisnikK(strOSUName, lngLength)
  23. ImeKorisnika = Left$(strOSUName, InStr(1, strOSUName, Chr(0)) - 1)
  24. KorisnikO_Exit:
  25. Exit Function
  26. scoKorisnikK_Err:
  27.   MsgBox "Error " & Err.Number & ":   " & Err.Description, vbInformation, "Error in " & strProcName, "Ime Baze"
  28.   Resume KorisnikO_Exit
  29. End Function

Ovo je sa API procedurom

a ovo je sa naredbom Environ
Procedura:
DownloadIzvorni kod (Visual Basic):
  1. Function InfoSIS(Naziv As String)
  2. Dim EnvString, Indx, I
  3. Do
  4. Indx = Indx + 1
  5.     EnvString = Environ(Indx)
  6.    I = InStr(1, EnvString, Naziv, vbTextCompare)
  7.     If I = 1 Then
  8.     InfoSIS = Mid(EnvString, Len(Naziv) + 2)
  9.     GoTo Kraj
  10.     End If
  11. Loop Until EnvString = ""
  12. Kraj:
  13. End Function

Primjer poziva:
Function poziv()
MsgBox InfoSIS("username")
End Function

E sad sta pisati u naziv kao ulazni parametar.
Evo spisak:
ALLUSERSPROFILE
AMDAPPSDKROOT
APPDATA
CM2014DIR
COMMANDER_DRIVE
COMMANDER_EXE
COMMANDER_INI
COMMANDER_PATH
CommonProgramFiles
CommonProgramFiles(x86)
CommonProgramW6432
COMPUTERNAME
ComSpec
FP_NO_HOST_CHECK
HOMEDRIVE
HOMEPATH
ILBDIR
LOCALAPPDATA
LOGONSERVER
MOZ_PLUGIN_PATH
NUMBER_OF_PROCESSORS
OS
Path
PATHEXT
PROCESSOR_ARCHITECTURE
PROCESSOR_ARCHITEW6432
PROCESSOR_IDENTIFIER
PROCESSOR_LEVEL
PROCESSOR_REVISION
ProgramData
ProgramFiles
ProgramFiles(x86)
ProgramW6432
PSModulePath
PUBLIC
SESSIONNAME
SystemDrive
SystemRoot
TEMP
TMP
USERDOMAIN
USERDOMAIN_ROAMINGPROFILE
USERNAME
USERPROFILE
VBOX_MSI_INSTALL_PATH
WecVersionForRosebud.E74
windir
Pozdrav
Ovaj komentar je mijenjan 2 puta. zadnja izmjena 06.10.2015-17:52 od strane zxz. ↑  ↓

Gjoreski Offline
Super Moderator
Registrovan/a od: 02.02.2009-22:24
Komentari: 1,231


Subject: Re: User Name & Local PC Name API
eve za User name
DownloadIzvorni kod (Visual Basic):
  1. Declare Function GetUserNameA Lib "advapi32.dll" (ByVal lpBuffer As String, nSize As Long) As Long
  2.  
  3. Public Function GetUserName() As String
  4. Dim UserName As String * 255
  5.     GetUserNameA UserName, 255
  6.     GetUserName = Left$(UserName, InStr(UserName, Chr$(0)) - 1)
  7. End Function

Kaj mene
komputer name=GJORESKI
User name = ALEKSANDAR
↑  ↓

Avko Offline
Super Moderator
Registrovan/a od: 28.05.2014-09:21
Komentari: 2,441


Subject: Re: User Name & Local PC Name API
hvala na pomoci
uzecu od gjoreskog iz dva razloga
1. kratke
2. rade za razliku od zxzijeve

htio bi da se ove dvije od gjoreskog stave ovdje
Racunari i oprema » Programirannje i baze podataka » Vb/Vbnet » Koristan VB kod*
isto tako da se stavi u Listu naslova
evo da olaksam stvar:

u modul
DownloadIzvorni kod (Visual Basic):
  1. Declare Function GetComputerNameA Lib "kernel32" (ByVal lpBuffer As String, nSize As Long) As Long
  2. Declare Function GetUserNameA Lib "advapi32.dll" (ByVal lpBuffer As String, nSize As Long) As Long
  3.  
  4. Public Function GetComputerName() As String
  5. Dim sResult As String * 255
  6.     GetComputerNameA sResult, 255
  7.     GetComputerName = Left$(sResult, InStr(sResult, Chr$(0)) - 1)
  8. End Function
  9.  
  10. Public Function GetUserName() As String
  11. Dim UserName As String * 255
  12.     GetUserNameA UserName, 255
  13.     GetUserName = Left$(UserName, InStr(UserName, Chr$(0)) - 1)
  14. End Function

poziv:
DownloadIzvorni kod (Visual Basic):
  1. Private Sub Command1_Click()
  2.     MsgBox GetUserName & vbNewLine & GetComputerName
  3. End Sub

Newton laže! Lake padaju brže!
↑  ↓

zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,364


Subject: Re: User Name & Local PC Name API
Kliknes na dodaj odgovor.
Napises naslov kakav zelis te ubacis proceduru.
Eto to je to.
Pozdrav
↑  ↓

Avko Offline
Super Moderator
Registrovan/a od: 28.05.2014-09:21
Komentari: 2,441


Subject: Re: User Name & Local PC Name API
Citat od zxz:
U ovoj temi mozete postavljati svoje procedure koje smatrate korisnim ali samo po odobrenju moderatora ovog foruma.
Procedura treba da sadrzi:
-Ime kreatora procedure
-Datum kreiranja
-Opis procedure

evo zato te moram pitati
Newton laže! Lake padaju brže!
↑  ↓

zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,364


Subject: Re: User Name & Local PC Name API
Pa po pravilu proceduru bi trebao postaviti @Gjoreski jer je on kreator.
Naravno treba i staviti neki opis.
Pozdrav
↑  ↓

zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,364


Subject: Re: User Name & Local PC Name API
Sad vidimi da si ti to vec napravio i dosta dobro.
Pozdrav
↑  ↓

Avko Offline
Super Moderator
Registrovan/a od: 28.05.2014-09:21
Komentari: 2,441


Subject: Re: User Name & Local PC Name API
Citat od zxz:
Sad vidimi da si ti to vec napravio i dosta dobro.

o: svakoga dana u svakom pogledu sve vise napredujem, heheh

Iskljucena tema:
nego nije ovdje mjesto ali cu usput pitati. Kada sam dosao na forum trazio sam procedure pod vb/vbnet i malo ih je tamo. S vremenom kako sam istrazivao forum otkrio sam da ih dosta ima u access - arhiva neke su za vb, a neke su za access. Smijem li, nakon sto ispitam u vb6, neke procedure kopirati u vb/vbnet a korisne su. Mozda netko dode kao i ja pa ce traziti pod vb/vbnet. Neznam dali se to smije?
znaci:
-ispitam proceduru dali radi u vb6 okruzenju
-kopiram u vb/vbnet-koristan kod (kao ovu od gjoreskog)
-upisem podatke ime,napravio,datum

dakle, dali bi to smetalo da se dupliciraju procedure, mislim kod pretrazivanja. Mozda u naslov da dodam vb6 pa onda ime procedure ili nesto slicno tome.
Koji je tvoj savjet i misljenje?

Newton laže! Lake padaju brže!
↑  ↓

zxz Offline
Administrator
Registrovan/a od: 03.02.2009-16:22
Komentari: 9,364


Subject: Re: User Name & Local PC Name API
Mozes to uraditi ali moras svaku isprobati.
Access ima biblioteke.
Visual Basic i access biblioteke dok vb6 ima biblioteke MSVBVM60.dll i visal basic.
Obadvije app. imaju vb jezik ali biblioteke koje su po defaultu nisu iste mada se mogu ukljuciti u referencama.
Zato treba svaku proceduru prvo isprobati dali radi pa onda staviti.
Pozdrav
↑  ↓

Avko Offline
Super Moderator
Registrovan/a od: 28.05.2014-09:21
Komentari: 2,441


Subject: Re: User Name & Local PC Name API
Citat od Avko:
Smijem li, nakon sto ispitam u vb6, neke procedure kopirati u vb/vbnet a korisne su. Mozda netko dode kao i ja pa ce traziti pod vb/vbnet. Neznam dali se to smije?
znaci:
-ispitam proceduru dali radi u vb6 okruzenju
-kopiram u vb/vbnet-koristan kod (kao ovu od gjoreskog)
-upisem podatke ime,napravio,datum


Citat od zxz:
Mozes to uraditi ali moras svaku isprobati.
Access ima biblioteke.
Visual Basic i access biblioteke dok vb6 ima biblioteke MSVBVM60.dll i visal basic.
Obadvije app. imaju vb jezik ali biblioteke koje su po defaultu nisu iste mada se mogu ukljuciti u referencama.
Zato treba svaku proceduru prvo isprobati dali radi pa onda staviti.

upravo sam to napisao u postu prije
Newton laže! Lake padaju brže!
↑  ↓

 Podijeli  Dodaj odgovor Stranice (1): 1

Srodne teme


All times are GMT +01:00. Current time: 27.06.2017-23:31.