Merhaba arkadaşlar,
Forumunuza yeni üye oldum. Bir konuda sıkıntı yaşıyorum uygulamamı standart bir windows kullanıcısı ile login olduktan sonra yönetici olarak çalıştırdığımda, Oturum açmış olduğum kullanıcının adını almaya çalışıyorum. Fakat yönetici olarak çalıştırdığımdan bana sürekli yönetici adı dönüyor.
Örnek: Test kullanıcısı ile oturum açıyorum. Std. kullanıcı uygulamayı yönetici olarak çalıştırıyorum yönetici kullanıcı adı:admin, ben bir türlü test kullanıcı adını alamıyorum sürekli admin kullanıcı adı dönmektedir.
Bir cevabı olan varsa beklerim. Saygılar...
Yönetici Modunda Çalıştırıldığında kullanıcı adını alma
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 17
- Kayıt: 23 Eyl 2015 12:43
Re: Yönetici Modunda Çalıştırıldığında kullanıcı adını alma
Foruma hoş geldiniz.
Öncelikle bu tip sorular için uyguladığınız koddan bir örnek yazarsanız, vereceğimiz cevap ile ilişkili karşılaştırma bazında daha kısa sürede sonuca ulaşabilirsiniz.
Kendi projelerimde kullandığım kodu paylaşıyorum (ön yetkilendirme işlemlerinde, Domain (etki alanı) altında ISA Server'dan kullanıcı oturum adını alarak oturum açan kullanıcıya kullandığım koddur)
Öncelikle bu tip sorular için uyguladığınız koddan bir örnek yazarsanız, vereceğimiz cevap ile ilişkili karşılaştırma bazında daha kısa sürede sonuca ulaşabilirsiniz.
Kendi projelerimde kullandığım kodu paylaşıyorum (ön yetkilendirme işlemlerinde, Domain (etki alanı) altında ISA Server'dan kullanıcı oturum adını alarak oturum açan kullanıcıya kullandığım koddur)
Kod: Tümünü seç
function UN : string; // UserName
const
cnMaxUserNameLen = 254;
var
sUserName : string;
dwUserNameLen : DWord;
begin
dwUserNameLen := cnMaxUserNameLen-1;
SetLength( sUserName, cnMaxUserNameLen );
GetUserName(
PChar( sUserName ),
dwUserNameLen );
SetLength( sUserName, dwUserNameLen );
Result := Trim(sUserName);
end;
-
- Üye
- Mesajlar: 17
- Kayıt: 23 Eyl 2015 12:43
Re: Yönetici Modunda Çalıştırıldığında kullanıcı adını alma
Değerli arkadaşım GetUsername fonksiyonları ile windows api kullanarak çağırdığımızda değişen bir şey yok. Sizde kodunuzu test ederseniz dediğim sorunla karşılaşacaksın buna aslında sorun dememekte gerekiyor. windows uygulamayı hangi kullanıcı ile çalıştırırsanız aktif olarak o kullanıcıyı baz alıyor.
saygılarımla..
saygılarımla..
Re: Yönetici Modunda Çalıştırıldığında kullanıcı adını alma
Muharrem abi'de yanlis olmaz. Olmussada yanlislikla olmustur. : )Bir de böyle dene!
Kolay gelsin.
Kod: Tümünü seç
function GetCurrentComputerAndUserName: string;
const
Winlogonkey = '\Software\Microsoft\Windows\CurrentVersion\Authentication\LogonUI';
begin
Result := '';
with TRegistry.Create do begin
RootKey := HKEY_LOCAL_MACHINE;
if OpenKeyReadOnly(WinLogonKey) then
Result := ReadString('LastLoggedOnSAMUser');
CloseKey;
Free;
end;
end;
Kolay gelsin.
kıdemsiz üye
-
- Üye
- Mesajlar: 17
- Kayıt: 23 Eyl 2015 12:43
Re: Yönetici Modunda Çalıştırıldığında kullanıcı adını alma
Aynen, Muharrem Bey değerli bir insan foruma katkıları çok büyük, size de teşekkür ederim.
başka bir şey deniyorum. Sizin kod örneğini de deneyip bilgi vereceğim.
İyi Bayramlar.
başka bir şey deniyorum. Sizin kod örneğini de deneyip bilgi vereceğim.
İyi Bayramlar.
-
- Üye
- Mesajlar: 17
- Kayıt: 23 Eyl 2015 12:43
Re: Yönetici Modunda Çalıştırıldığında kullanıcı adını alma
Sizin Kodunuz da çalışıyor. Teşekkürler.