Windows 8.1 - spuštění příkazu z .bat jako admin

Lol Phirae

Re:Windows 8.1 - spuštění příkazu z .bat jako admin
« Odpověď #15 kdy: 09. 12. 2018, 16:32:03 »
Máš problémy s chápáním psaného textu? Je tam "nebo odpovídající uživatele... "

Ne, nemám problémy s chápáním... Proč tam jako první variantu uvádíš úplně nesvéprávné kokotiny?  ::)


martyd420

  • ***
  • 193
  • K U B U N T U
    • Zobrazit profil
    • E-mail
Re:Windows 8.1 - spuštění příkazu z .bat jako admin
« Odpověď #16 kdy: 09. 12. 2018, 16:56:13 »
Proč tam jako první variantu uvádíš úplně nesvéprávné kokotiny?  ::)
Protože si o to tazatel výslovně řekl ve svém druhém postu (nevýznamný domácí offline komp bez rizika zneužití).
Jen jsem pomohl vyřešit problém a současně jsem se udržel tématu. ;)  A kdyby přece chtěl realizovat podobnou věc jinde, napsal jsem právě to "nebo odpovídající uživatele".
Když to umíš líp, nemusíš se semnou hádat a klidně sepiš jak to správně nastavit funkčně a současně bezpečně.
T_PAAMAYIM_NEKUDOTAYIM  |  Nemám rád IPv6 influencery :P

k3dAR

  • *****
  • 2 837
  • porad nemam telo, ale uz mam hlavu... nobody
    • Zobrazit profil
    • E-mail
Re:Windows 8.1 - spuštění příkazu z .bat jako admin
« Odpověď #17 kdy: 09. 12. 2018, 18:12:01 »
- powershell.exe Start-Process <příkaz> -Verb runAs
   nefunguje, protože spolu s příkazem nelze předat parametry (toto řešení je funkční jen pokud pouštím .exe bez dalších parametrů, já však potřebuji předat řadu dalších parametrů, z nichž některé jsou ještě v uvozovkách)

priklad s parametry a nektere jeste v uvozovkach ;-)
Kód: [Vybrat]
powershell Start-Process -Window hidden -Verb runAs cmd '/c reg.exe ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\DriverSearching" /v SearchOrderConfig /t REG_DWORD /d 3 /f'

Fan

Re:Windows 8.1 - spuštění příkazu z .bat jako admin
« Odpověď #18 kdy: 09. 12. 2018, 20:18:00 »
Problém je vyřešen. Plně funkční řešení kompletně splňující zadání je na začátku zmíněné "powershell.exe Start-Process".
Nefungovalo mi to proto, že jsem špatně předával parametry. Správně se zadávají jednotlivě v apostrofech oddělené čárkou, zatímco já je tam pořád strkal v uvozovkách.
(Též řešení k3dAR z předchozího příspěvku je plně funkční, škoda, že tento příspěvek nebyl zaslán jako první.)

Díky všem, kteří i přes lehce vyhrocenou diskuzi posílali návrhy, neboť i přesto, že třeba nevedly k řešení, pomohly mi rozšířit si obzory tím, že jsem si mohl vyhledat něco nového.

Původní dotaz tedy považuji za uzavřený, ale vrátím se k tomuto komentáři:

Tazatel se zřejmě v době MSDOS/W3.11 naučil používat subst a za dvacet let se tu nesmyslnou kokotinu ještě neodnačil.

Co je podle tebe správná náhrada příkazu subst?

Rozhodně to není příkaz "net use", který nefunguje na již jednou takto mapovaných discích, ani na discích mapovaných přes subst (net use slouží totiž k něčemu jinému, než slouží subst).
Sám jsem se tímto tématem před časem zabýval bez kloudného výsledku, proto by mě zajímalo, jakým způsobem (z .bat dávky) mapuješ libovolnou cestu na zadané písmeno disku. Mně zatím spolehlivě a univerzálně funguje právě subst, který má ale od Windows Vista bug, že takto mapované disky nevidí aplikace nebo skript spuštěné s vyšším oprávněním. Pokud sem napíšeš jiné funkční řešení nahrazující, budu rád.

Lol Phirae

Re:Windows 8.1 - spuštění příkazu z .bat jako admin
« Odpověď #19 kdy: 09. 12. 2018, 21:08:03 »
Co je podle tebe správná náhrada příkazu subst?
Pokud sem napíšeš jiné funkční řešení nahrazující, budu rád.

Ano, správné řešení je

Kód: [Vybrat]
C:\Sem\Napiš\Cestu\K\Souboru\Hovado\Líné\Kurňa.bat
Co přesně jsi nepochopil na tom, že podobné kokotiny jako subst už 20+ let příčetný člověk nepoužívá a nikdo je netestuje ani nepodporuje, tak ti asi není pomoci.


Fan

Re:Windows 8.1 - spuštění příkazu z .bat jako admin
« Odpověď #20 kdy: 09. 12. 2018, 22:04:42 »
Co je podle tebe správná náhrada příkazu subst?
Pokud sem napíšeš jiné funkční řešení nahrazující, budu rád.

Ano, správné řešení je

Kód: [Vybrat]
C:\Sem\Napiš\Cestu\K\Souboru\Hovado\Líné\Kurňa.bat
Co přesně jsi nepochopil na tom, že podobné kokotiny jako subst už 20+ let příčetný člověk nepoužívá a nikdo je netestuje ani nepodporuje, tak ti asi není pomoci.
Co přesně jsi nepochopil na otázce "jak se funkčně nahradí subst", když mi odpovídáš, kdo tento příkaz používá či nepoužívá? Co přesně jsi nepochopil na otázce "jak spustit příkaz jako administrátor", když odpovídáš, a to ještě tak pitomým způsobem, zda je vhodné mít administrátorský účet bez hesla?

Jediná tvoje odpověď v tomto vláknu nebyla k ničemu, ať už se týkala mých dotazů, nebo odpovědí těch, co mi byli ochotní poradit.

Lol Phirae

Re:Windows 8.1 - spuštění příkazu z .bat jako admin
« Odpověď #21 kdy: 09. 12. 2018, 22:13:49 »
Co přesně jsi nepochopil na otázce "jak se funkčně nahradí subst"

Nefunkční nepodporovaný desítky let přežitý nesmysl není třeba ničím nahrazovat. Prostě tam napiš cestu k souboru. Vyřešeno. A hlavně bych radil už nikde nic neadminovat, se znalostmi končícími v éře MSDOS to je opravdu hodně blbý nápad.

k3dAR

  • *****
  • 2 837
  • porad nemam telo, ale uz mam hlavu... nobody
    • Zobrazit profil
    • E-mail
Re:Windows 8.1 - spuštění příkazu z .bat jako admin
« Odpověď #22 kdy: 09. 12. 2018, 22:18:17 »
Co přesně jsi nepochopil na otázce "jak se funkčně nahradí subst", když mi odpovídáš, kdo tento příkaz používá či nepoužívá?
ja bych si ho nevsimal, subst ma zaznam v dokumentaci windows serveru:
https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/subst
a nedavne otevrenou issue ktera je mozna blizko tvemu problemu:
https://github.com/MicrosoftDocs/windowsserverdocs/issues/593

MD

Re:Windows 8.1 - spuštění příkazu z .bat jako admin
« Odpověď #23 kdy: 10. 12. 2018, 01:08:58 »
Citace
- nastavit celý skript, aby byl spouštěn jako administrátor nefunguje, protože skript leží na substovaném disku a Windows novější než XP zavedly bug způsobující, že ani administrátorský účet nevidí substované disky mapované pod jiným uživatelem

Řekl bych, že "písmena dísků" vytvořená přes subst jsou lokální pro daného uživatele (podobně jako připojené síťové jednotky). Administrátor samozřejmě má oprávnění je vidět, ale nezobrazují se mu v Tento počítač. Každý uživatel může mít například písmeno Z mapováno někam jinam. Nejedná se o bug.

Symlink by měl řešit váš problém. Subst vlastně nedělá nic jiného. I písmena diskových jednotek jsou vlatně symlinky (ač se nezapisují do souborového systému).

---------------------

Váš účet má administrátorská práva, jen je třeba se k nim dostat projitím skrz UAC dialog. UAC dialog ale není považován za bezpečnostní bariéru. Jinými slovy, MS se příliš nesnaží opravovat chyby (či návrhové featury) umožňující tento dialog obejít (zejména pokud jde v podstatě o ten návrh, ne jen nějaký DLL hjacking). Je tedy otázka, zda vám stojí za to mít UAC vůbec zapnuté

Pokud chcete opravdu pracovat s oezenými právy, je potřeba vytvořit Standardního uživatele.

Fan

Re:Windows 8.1 - spuštění příkazu z .bat jako admin
« Odpověď #24 kdy: 10. 12. 2018, 06:51:14 »
Citace
- nastavit celý skript, aby byl spouštěn jako administrátor nefunguje, protože skript leží na substovaném disku a Windows novější než XP zavedly bug způsobující, že ani administrátorský účet nevidí substované disky mapované pod jiným uživatelem

Řekl bych, že "písmena dísků" vytvořená přes subst jsou lokální pro daného uživatele (podobně jako připojené síťové jednotky). Administrátor samozřejmě má oprávnění je vidět, ale nezobrazují se mu v Tento počítač. Každý uživatel může mít například písmeno Z mapováno někam jinam. Nejedná se o bug.

Symlink by měl řešit váš problém. Subst vlastně nedělá nic jiného. I písmena diskových jednotek jsou vlatně symlinky (ač se nezapisují do souborového systému).

---------------------

Váš účet má administrátorská práva, jen je třeba se k nim dostat projitím skrz UAC dialog. UAC dialog ale není považován za bezpečnostní bariéru. Jinými slovy, MS se příliš nesnaží opravovat chyby (či návrhové featury) umožňující tento dialog obejít (zejména pokud jde v podstatě o ten návrh, ne jen nějaký DLL hjacking). Je tedy otázka, zda vám stojí za to mít UAC vůbec zapnuté

Pokud chcete opravdu pracovat s oezenými právy, je potřeba vytvořit Standardního uživatele.

Děkuji za podrobné odpovědi o oběma tématům.
Symlinky bohužel neklapnou - pro jejich vytvoření je třeba mít administrátorská práva. Mapování písmen potřebuji pro řešení portability aplikací, tedy většinou (i když ne výhradně :-) na PC bez administrátorských práv. Zde se mi osvědčil nejlépe subst s popisovanou nevýhodou, kdy po spuštění nějakého instalátoru vyžadujícího administrátorská práva z mapovaného disku následuje hláška "soubor nenalezen", neboť instalátoru mapovaný disk zmizí po přepnutí oprávnění pod rukama. To je ale snadno řešitelný detail - zrovna instalátor není nutné z přemapovaného disku spouštět, mohu ho kamkoliv zkopírovat.

Re:Windows 8.1 - spuštění příkazu z .bat jako admin
« Odpověď #25 kdy: 10. 12. 2018, 08:51:57 »
a proč si to nepřimapuješ pomocí net use?

https://www.lifewire.com/net-use-command-2618096

Lol Phirae

Re:Windows 8.1 - spuštění příkazu z .bat jako admin
« Odpověď #26 kdy: 10. 12. 2018, 09:14:02 »
a proč si to nepřimapuješ pomocí net use?

To v příručce k MSDOSu nepsali.  ;D

Fan

Re:Windows 8.1 - spuštění příkazu z .bat jako admin
« Odpověď #27 kdy: 10. 12. 2018, 13:00:26 »
a proč si to nepřimapuješ pomocí net use?

https://www.lifewire.com/net-use-command-2618096
Ahoj, Net use zmiňuji v příspěvku  09. 12. 2018, 20:18:00 - "nefunguje na již jednou takto mapovaných discích, ani na discích mapovaných přes subst".
Jedná se o nástroj k jinému účelu - neslouží k přemapovávání adresářů, ale k připojování disků, co ještě ve filesystemu nejsou.

Každopádně to neřeš, subst mi s lehkým omezením vyhovuje nejlépe, i když jsem se před časem snažil najít alternativu.
Vlákno jsem zakládal kvůli jinému dotazu a k substu jsem odbočil jen na základě jednoho z předchzích příspěvků v domění, že bych se mohl dozvědět něco nového. To se však nestalo, neboť, jak prozradil Google v ostatních diskuzích na Rootu, Lol Phirae je místní kripl, co akorát prochází fórum a kromě debilních komentářů není schopen nikomu poskytnout jakoukoliv užitečnou informaci vedoucí k zodpovězení dotazu. Teď jsem pozornost tohoto dementa vyhrál já.

Netřeba se tedy substem dále zaobírat a původní dotaz je též zodpovězen.

Lol Phirae

Re:Windows 8.1 - spuštění příkazu z .bat jako admin
« Odpověď #28 kdy: 10. 12. 2018, 15:21:03 »
Ahoj, Net use zmiňuji v příspěvku  09. 12. 2018, 20:18:00 - "nefunguje na již jednou takto mapovaných discích, ani na discích mapovaných přes subst".

To je velmi překvapivé, že když už si někdo jednou disk namapuje, tak že ho nemůže znova mapovat jinam. Jestli máš schízu, tak se zkus léčit. Podobné kokotiny, co provozuješ, byly "in" asi tak před 30 lety - hele Franto, já tady mám na tomhle superkomplu s turbotlačítkem dvacet disků, to čumíš, co?

 ::) ::) ::)

MD

Re:Windows 8.1 - spuštění příkazu z .bat jako admin
« Odpověď #29 kdy: 10. 12. 2018, 21:31:57 »
Pokud přes ten subst řešíte instalátory, co třeba chtějí "disketu" na A: či B: apod., můžete na disku vytvořit svazky a přiřadit jim potřebná písmena. Takové přiřazení zřejmě bez administrátorských práv neuděláte (ale na ty svazky i s omezenými právy nakopírujete, co potřebujete). Takto udělané mapování bude platit pro všechny uživatele, neb se jedná o lokální disky.