Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Existuje několik běžných problémů, které by mohly zabránit úspěšnému spuštění existujícího ovladače WIA (který byl v místním systému v pořádku) v rámci účtu LocalService .
K nejběžnějším problémům dochází s:
Přístup k systému souborů
Účet LocalService má vážně omezený přístup k souborům. Ovladače už například nemůžou zapisovat do adresáře %windir%.
Přístup k registru
Mnoho klíčů registru, které byly otevřeny pro účty LocalSystem, jsou pro účty LocalService jen pro čtení. Ovladače už například nemůžou zapisovat do klíčů registru pod podstrom HKLM.
Pojmenované objekty jádra
Ujistěte se, že pojmenované objekty (například události a mutexy) přístupné ovladačem WIA i externími komponentami, jako jsou aplikace v sadě, mají příslušné seznamy ACL. Pokud aplikace vytvoří pojmenovaný objekt události, ale výslovně neudělí přístup k účtu LocalService , ovladač ho nebude moct použít. Podobně platí, že pokud minidriver vytvoří pojmenovaný objekt události, musí udělit stejný přístup nebo aplikace nebude moct objekt události použít.
Mimoprocesové COM objekty
Pokud tato komponenta explicitně neudělí příslušná oprávnění k účtu LocalService , všechny pokusy o vytvoření nebo použití rozhraní MODELU COM mimo proces selžou. Například volání CoCreateInstance nebo CoCreateInstanceEx (obě jsou popsány v dokumentaci k sadě Microsoft Windows SDK) se sadou příznaků CLSCTX_LOCAL_SERVER může selhat, pokud komponenta neudělí oprávnění k účtu LocalService . Podobně může selhat ovladač, který se pokouší použít ukazatel na rozhraní COM, které není v rámci stejného procesu jako ovladač. K tomu může dojít, pokud komponenta volá ovladač a předává mu ukazatel na rozhraní, pomocí kterého může ovladač volat zpět do rozhraní.
Vytváření a otevírání procesů
Ovladače WIA by neměly ručně spouštět jiné procesy (například voláním metody CreateProcess nebo CreateProcessAsUser). Ačkoli by toto chování u ovladačů fungovalo úspěšně na účtech LocalSystem, již není možné, aby ovladače něco takového provedly na novém účtu LocalService. Další informace o CreateProcess a CreateProcessAsUser naleznete v dokumentaci k sadě Windows SDK.