2016-03-28 22 views
1

Kiosk sistemi üzerinde çalışıyorum ve klavyeyi kilitleyebilmem ve oturum açma ekranındaki seçenekleri kapatmam gerekiyor. Böylece başlangıçta kodum bu şeyleri yapıyor ve bir güvenlik kilidi takılıysa, bunları geri alıyor.Win7 C++ - kiosk modu uygulamasında yönetici erişimi yok

Uygulamayı sağ tıklatıp "Yönetici olarak çalıştır" ı seçtiğimde Kiosk'ta sorunsuz çalışıyor. Klavye kilitlendi (tuş vuruşlarını yakalıyorum), ancak beş seçenek düğmesinin tamamı ile oturum açma ekranı gelmeye devam ediyor. Hata ayıklama yazılarını bir dosyaya ekledim ve nedenin "erişim reddedildi" olduğunu tespit ettim.

Kiosk'um yönetici haklarına sahip bir kullanıcı ile kuruldu ve uygulama yolu adı (C: \\. Exe) HKEY_CURRENT_USER \ Software \ Microsoft \ Windows NT \ CurrentVersion \ içinde Shell değeri olarak ayarlandı. WinLogon. Bu uygulama oturum 0 olarak çalışacağından, beş oturum açma ekranı seçeneklerini devre dışı bırakma ve etkinleştirme haklarını vermek için başka ne yapılması gerektiğinden emin değilim.

cevap

1

Kiosk uygulamasını geliştirme konusunda tecrübem var ve size bir sonraki çözümü öneriyorum. Bu evrensel bir çözümdür ve beklendiği gibi çalışır. Uygulamayı oturum açma oturumunda çalıştır - kötü bir fikirdir. Uygulamayı winlogon regkey ile çalıştır, session0'da çalıştırılamaz, kullanıcı oturumunda uygulamayı çalıştırır.

  • kiosk modu
  • uygulamanıza yolu olarak bu kullanıcı için
  • Set sonraki kayıt defteri anahtarı için kullanıcı oluştur:

Windows XP/7:

, Windows kiosk modu sonraki adımları ihtiyaç Daha sonra

Windows Registry Editor Version 5.00 

[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Winlogon] 
"Shell"="C:\\full\\path\\to\\your\\application.exe>" 

Windows 8 ve:

Windows Registry Editor Version 5.00 

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System] 
"Shell"="C:\\full\\path\\to\\your\\application.exe>" 
Otomatik girişi kiosk kullanıcı için:

Windows Registry Editor Version 5.00 

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon] 
"AutoAdminLogon"="1" 
"ForceAutoLogon"="1" 
"DefaultUserName"="kiosk" 
"DefaultDomainName"="<place here pc hostname>" 
"DefaultPassword"="" 

[Seçenek] Ctrl + Alt + Del devre dışı gerekiyorsa, o zaman bu kayıt defteri anahtarı değeri kullanın ("") ya da orada kendi yerleştirebilirsiniz Uygulama:

Windows Registry Editor Version 5.00 

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\taskmgr.exe] 
"Debugger"="\"\"" 

Bu uygulama ile kiosk kullanıcısı oluşturun, uygulamanızı kabuk olarak oluşturun ve parola ile yönetici oluşturun/etkinleştirin. Otomatik olarak yüklenirken, pencereler yüklenirken ve autologin'den önce ya da çıkış yaparken, pencereler otomatiklogla yazmaz ve kullanıcı listesini göstermez. Veya, autologin'i ayarlayamazsınız ve pencereler 2 kullanıcı gösterecektir: bununla birlikte admin ve kiosk kullanıcısı. sizin programm Yukarıdaki çözüm bu durumda tekrar devre dışı bırakabilir -

+ alt + del ctrl tarafından kullanıcı girişi kullanımı WINAPI BlockInput

BOOL WINAPI BlockInput(
    _In_ BOOL fBlockIt 
); 

Bu etkinleştirilebilir devre dışı bırakın.

İlgili konular