Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem CMD-instalace reg podle username[Win XP Pro]

Zdravim, potrebuji poradit. Chtel bych vytvorit bat'ak, ktery podle uzivatelskeho jmena naimportuje urcite registry. Jedna se o domenove ucty, u kterych se pred nejakou dobou menil nazev uctu a puvodni nazev uctu zustal v PC(napr. nazev v PC je ucetni a novy login k tomuto uctu je Tereza-ucetni). Melo by to naimportovat registry podle existence souboru tsm v Dokumentech, pokud existuje, pak goto end v jinem pripade naimportuje registry.
Takhle script vypada ted

if "%username%" == "Tereza-ucetni" (
IF NOT EXIST C:\Documents and Settings\%username%\Dokumenty\tsm (
goto start
pause
)
echo. Nejste Tereza-ucetni - zkousim dalsi
)
if "%username%" == "Lakatos-skladnik" (
IF NOT EXIST C:\Documents and Settings\%username%\Dokumenty\tsm (
goto start
pause
)
echo. Nejste Lakatos-skladnik - zkousim dalsi
)
goto end

:start
neco spusti
goto end

Bohuzel %username% dela problem, nerozpozna skutecneho uzivatele, ktery pouze dostal novy login a nainstaluje uzivately reg a tim zmeni nastaveni.
Timto scriptem jsem chtel dosahnout aby po prihlaseni noveho uzv.(napr. Antonin-pracovnik) do jakehokoliv PC v siti se spustil script, ktery by rozpoznal ze se jedna o novy ucet, ktery v pc jeste nebyl a naimportuje reg.

Nevite jak by se to dalo udelat?

Předmět Autor Datum
Bohuzel %username% dela problem, nerozpozna skutecneho uzivatele, ktery pouze dostal novy login a na…
MM_tank 07.05.2010 14:56
MM_tank
Nebude lepší použít %userprofile% ??
MM_tank 07.05.2010 15:03
MM_tank
S tim userprofile to nejde vubec. Skonci to notepadem :D if "%userprofile%" == "Tereza-ucetni" ( IF…
Martinek 07.05.2010 15:18
Martinek
Co s tim :) Potreboval bych to nejak obejit, napr. pouzit nejakou jinou promennou, parametr nebo jin…
Martinek 07.05.2010 15:08
Martinek
Ten %UserProfile% se hodí přímo skvěle. Ty však děláš jednu chybu, kterou odhalíš v okamžiku, kdy si…
Pytlík 07.05.2010 15:23
Pytlík
Takze vlastne staci asi pridat k puvodnimu scriptu do podminek jenom tyto dve nove podminky IF "%us…
Martinek 07.05.2010 16:23
Martinek
Musíš to prostě vyzkoušet. Já nevím co hlásí tyhle proměnné pod doménou. Zkusil bych to asi takhle j…
MM_tank 07.05.2010 16:35
MM_tank
Pokud ty improty nejsou stejny tak IF NOT EXIST %userprofile%\Dokumenty\tsm goto nasertotam goto ko…
MM_tank 07.05.2010 16:39
MM_tank
Už počujem, ako Gamál Abdal Násir (číta sa naser) v hrobe štikúta (škytá). poslední
modra nie vzdy dobra 07.05.2010 18:55
modra nie vzdy dobra
Ty sis nevypsal obsah proměnné UserProfile, jak jsem ti radil, jinak bys věděl, že to nemůže být "Te…
Pytlík 07.05.2010 17:10
Pytlík
IF NOT EXIST %userprofile%\Dokumenty\tsm
MM_tank 07.05.2010 15:51
MM_tank

Bohuzel %username% dela problem, nerozpozna skutecneho uzivatele, ktery pouze dostal novy login a nainstaluje uzivately reg a tim zmeni nastaveni.

To bych řekl že je i normální:-), teda z pohledu filesystému. Příklad - vytvořím při instalaci uživatele "uzivatel", windows udělá složky "uzivatel". Pokud uživatele přejmenuju na "Novak" zjednodušeně nic kromě nápisu při logonu se nezmění, složka "uzivatel" zustane a dal se použiva pro Novaka.

S tim userprofile to nejde vubec. Skonci to notepadem :D

if "%userprofile%" == "Tereza-ucetni" (
IF NOT EXIST C:\Documents and Settings\%userprofile%\Dokumenty\tsm (
goto start
pause
)
echo. Nejste Tereza-ucetni - zkousim dalsi
)
if "%userprofile%" == "Martinek" (
IF NOT EXIST C:\Documents and Settings\%userprofile%\Dokumenty\tsm (
goto start
pause
)
echo. Nejste Martinek - zkousim dalsi
)

echo Konec
notepad
pause
goto end

:start
taskmgr
pause
goto end

Takze vlastne staci asi pridat k puvodnimu scriptu do podminek jenom tyto dve nove podminky

IF "%userprofile%" == "Tereza-ucetni" (
IF EXIST %userprofile%\Dokumenty\tsm (
goto end
)
goto start
)
IF "%userprofile%" == "Lakatos-skladnik" (
IF EXIST %userprofile%\Dokumenty\tsm (
goto end
)
goto start
)

Musíš to prostě vyzkoušet. Já nevím co hlásí tyhle proměnné pod doménou. Zkusil bych to asi takhle jednoduše: - za syntaxi neruším, abych to ještě zkoušel....

IF NOT EXIST %userprofile%\Dokumenty\tsm goto nasertotam
goto konec

:nasertotam
-pokud je soubor stejnej pro vsecky neni problem ne ?
goto konec

:konec

Pokud ty improty nejsou stejny tak

IF NOT EXIST %userprofile%\Dokumenty\tsm goto nasertotam
goto konec

:nasertotam
if "%username%" == "Martinek" goto prvni_cmoud
if "%username%" == "Pepak" goto druhy_cmoud
goto cmoud_nenalezeny

:prvni_cmoud
REGEDIT /S kokous1.reg
goto konec

:druhy_cmoud
REGEDIT /S kokous2.reg
goto konec

:cmoud_nenalezeny
echo Ku*va neco v h**zlu
goto konec

:konec

Zpět do poradny Odpovědět na původní otázku Nahoru