2010-05-27 16 views

cevap

51

aşağıdaki tuşlardan birini bakarsak:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\hivelist

Onların adlarını içeren nerede onların "ev yolları" gibi çeşitli değerler, orada SID bir listesini bulabilirsiniz.

Bunun ne kadar güvenilir olduğundan emin değilim ve ne yaptığınızdan emin olmadığınız sürece bununla uğraşmanızı tavsiye etmem.

+0

bulundu. Teşekkürler! – modz0r

+9

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ falcı yalnızca şu anda her sistemde oturum açmış kullanıcı gibi görünüyor (Xp - 7) Ben baktım ... Ve ben düşünmüyordum HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ ProfileList \ \ ProfileImageYeni bir kullanıcı adı belirleme yöntemi güvenilir bir yoludur (Bkz. Http://support.microsoft.com/kb/2454362). – user66001

20

Bu bilgi WMI adresinden sorgulanabilir. Aşağıdaki komut, her kullanıcı için SID ile birlikte her kullanıcı için bir satır içeren bir tablo verecektir.

wmic useraccount get name,sid 

Ayrıca CSV bu bilgileri verebilirsiniz: Vista üzerinde bu kullanılmış ve var

wmic useraccount get name,sid /format:csv > output.csv 

fazla bilgi için 7. WMIC - Take Command-line Control over WMI bakın.

+0

Maalesef, aldığım SID'ler Windows 7 x64'deki HKEY_USERS altındaki değerlerle eşleşmiyor. –

+0

Yasal bir SID'nin görünmemesi mümkündür, çünkü o kullanıcının özel kovanı o anda tam olarak yüklenmemiştir.Runas/profile/user: requesteduser somearbitrarycommand' onu yükleyecektir. – amonroejj

0

Microsoft \ Windows \ ... o komik sayı tuşları için, yaratıcı programlama bir azar, HKEY_LOCAL_MACHINE \ SOFTWARE

  • Enum tuşları HKEY_USERS'ın içinde

    1. Enum Keys de yapmıştım NT \ CurrentVersion \ ProfileList

    ve aynı numaralar .... Şimdi o anahtarlarında dize değeri bakmak bulacaksınız \: ProfileImageP değerler ya vardır sporcudan = "birdeğer":

    "% systemroot% \ system32 \ config \ SystemProfile" ... ... onun değil dizin yolu olarak bu bir ... ilgilenmiyor

    % SystemDrive% \ Documents and Settings \ LocalService - "Yerel Hizmetler" % SystemDrive% \ Documents and Settings \ networkservice "AĞ HİZMETİ"

    veya

    % SystemDrive% \ Documents and çevirir Settings \ USER_NAME en çok değiştirilmemiş sistemlerde doğrudan "KULLANICI ADI" değerlerine, yani. Kullanıcı birkaç hafta sonra kullanıcı adını değiştirmediği ya da yolları açıkça değiştirdiği ...

  • +2

    ""% systemroot% \ system32 \ config \ systemprofile "... dizin yolu değil ..." hatalı. Çalıştır iletişim kutusuna bunu deneyin. – user66001

    +0

    (WinXP + 7 üzerinde çalışma doğrulandı) – user66001

    11
    1. Açık Reg HKEY_LOCAL_MACHINE \ SOFTWARE Microsoft \ Windows \ NT \ CurrentVersion \ ProfileList

    2. Bunlarla başlatılır ile ilgilenen tüm alt anahtarlar

    3. alt anahtarlarını almak için bir döngü yapmak \ [ S-1-5-21-] kullanıcı anlamına gelir (bkz. Anahtar adı [ProfileImagePath] her zaman bir yolla başlatılırlar: c Kullanıcıları)

    4. [S-1-5-21-12] ile başlayanlar hepsi yerel kullanıcılar

    5. [S-1-5-21-13] ile başlayanlar, daha önce makinede oturum açmış olan tüm ağ kullanıcılarının ( Alan Ağına katıldıysa) [].

    +4

    3 bir hata ve akıllıca bir tavsiye içermiyor. [ProfileImagePath], bir c: \ Users yolu ile başlamak zorunda değil ... https://www.google.com/#hl=tr&tbo=d&output=search&sclient=psy-ab&q=move+windows+7+ adresine bakın. kullanıcı + dizin; Ayrıca, bu konu hakkında yorum yaptı ve @spade tarafından kullanıcı/yönetici kullanıcı adı post hesabı oluşturma ve oturum açma değiştirdiyse, profil dizini adı artık kullanıcı adıyla eşleşmeyecek (http://support.microsoft.com))/kb/2454362) – user66001

    0
    for /f "tokens=8 delims=\" %a in ('reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\hivelist" ^| find "UsrClass.dat"') do echo %a 
    
    +0

    Bu kod örneğini biçimlendirmek için 'code' markup 'etiketlerini kullanmak isteyebilirsiniz :) – summea

    2

    Microsoft'un SysInternals ekibinden komut PsGetSid kullanabilirsiniz.

    indir URL: http://technet.microsoft.com/en-gb/sysinternals/bb897417.aspx

    Kullanımı:

    psgetsid [\\computer[,computer[,...] | @file] [-u username [-p password]]] [account|SID] 
    -u Specifies optional user name for login to remote computer. 
    -p Specifies optional password for user name. If you omit this you will be prompted to enter a hidden password. 
    Account PsGetSid will report the SID for the specified user account rather than the computer. 
    SID PsGetSid will report the account for the specified SID. 
    Computer Direct PsGetSid to perform the command on the remote computer or computers specified. If you omit the computer name PsGetSid runs the command on the local system, and if you specify a wildcard (\\*), PsGetSid runs the command on all computers in the current domain. 
    @file PsGetSid will execute the command on each of the computers listed in the file. 
    

    Örnek:

    psgetsid S-1-5-21-583907252-682003330-839522115-63941 
    

    Not:

    kullanıcı etki alanı/AD ise
    • (LDAP) kullanıcı , bunu herhangi bir yüklü bilgisayarda çalıştırıyor Alandaki aynı sonuçları vermelidir.
    • Kullanıcının makineye yerel olması durumunda, komut ya o makinede çalıştırılmalı ya da bilgisayarı isteğe bağlı parametre ile belirtmelisiniz.

    Güncelleme

    PowerShell kullanırsanız, aşağıdaki herhangi AD kullanıcıların listelenen çözmek için yararlı olabilir:

    #create a drive for HKEY USERS: 
    New-PSDrive -PSProvider Registry -Name HKU -Root HKEY_USERS -ErrorAction SilentlyContinue 
    
    #List all immediate subfolders 
    #where they're a folder (not a key) 
    #and they's an SID (i.e. exclude .DEFAULT and SID_Classes entries) 
    #return the SID 
    #and return the related AD entry (should one exist). 
    Get-ChildItem -Path 'HKU:\' ` 
    | ?{($_.PSIsContainer -eq $true) ` 
    -and ($_.PSChildName -match '^S-[\d-]+$')} ` 
    | select @{N='SID';E={$_.PSChildName}} ` 
    , @{N='Name';E={Get-ADUser $_.PSChildName | select -expand Name}} 
    

    Ayrıca SID sadece daha fazla filtre hassaslaştırarak Dilerseniz bir AD hesabına çözülecek olan SID'leri geri çekin; Burada SID yapısı hakkında daha fazla: https://technet.microsoft.com/en-us/library/cc962011.aspx

    2

    kayıt benim kimliği ararken, ben Tam olarak ne gerekli

    HKEY_CURRENT_USER\Volatile Environment\Username 
    
    İlgili konular