

Zástupce na flash disku
Dobrý den,
mám FF na flashce - G:\Apps\Firefox.exe a chtěl bych na něj adresovat zástupce z (např.) G:\Docs\Inks\Firefox.ink.
1) Nemůžu použít relativní cestu protože .exe není v podadresáři u .ink :(
2) Nemůžu použít absolutní cestu protože na dalších pc je to disk G:\, H:\, T:\ atd...
3) Mohl bych to sešněrovat %disk%\Apps\Firefox.exe Ale neznám žádnou proměnnou prostředí, která by odkazovala na aktuální písmeno disku :(
Byl bych si schopný napsat program který mi "vypreparuje" písmeno mého flash disku, ale stejně bych ho jako ne-administrátor nemohl použít pro tyto účely :(
Help
OMG. Nie ink
, ale LNK
V ceste sa da pouzit .. co znamena o zlozku vyssie. U zastupcov som to nikdy neskusal ale nevidim dovod preco by to nemalo fungovat. Relativna cesta teda bude:
..\..\Apps\Firefox.exe
no jo je to lnk :) my bad
.. jsem zkoušel, ale dosazuje za ně C:\
c: nejspíš proto že to zkoušíš na systémovém disku
- link má v sobě natvrdo zapsanou cestu. flashka by se ti musela všude připojovat taky stejným písmenem,
- nebo bys na těch pc musel používat program pro správu usb disků usbldm,
- nebo zkus vždycky z rootu flashky spustit batku s příkazem subst pro přiřazení univerzalniho druhého pevného písmene tvé flashce:
Tak to zase nešlo :(
tak jsem to zkusil, funguje.
na flashce je tano substituční batka třeba v rootu, ať se líp hledá. po připojení k neznámému pc se flashce přiřadí nějaké písmeno. musíš tento usb najít a spustit "ypsilonuj.bat". toto je první podmínka.
druhá je ta, že si na flashce s tímto novým písmenem (třeba y:) uděláš zástupce. ve správci souborů můžeš zkontrolovat že cesty vedou na nový (y:) disk. kdyby se ti to nedařilo, přepiš obsah třeba hexa editorem.
nakonec doporučuju dát tvým .lnk atribut read-only.
je tam nějaký problém, protže když spustím příkaz: "G:\> subst Y: G:\" tak okno odřádkuje procesor začne makat a nic se nestane :(
Adminovský práva mám... ale chci to spouštět i bez nich.
Když v cmd "C:\> subst Y: G:\" tak to je během 0.001sek a vše šlape :S
V příkazech jsem chybu neudělal - copy paste, jde o to odkud se příkaz spustí, jestli z flash nebo c:\
Dokonce jsem to zkusil z datového disku D:\> subst X: G:\ a taky šlo
Problém jsem ještě nepochopil ale dá se to řešit pridaním tohodle:
f:\>
set flash=%CD%
set sub=Q:
%homedrive%
c:\> dál to zname
nejde, kdyz se vymaze uplna cesta a da se tam jen nazev a je to ve stejnem adresari,tak to taky nejde.
V tom pripade nie je mozne u zastupcov pouzivat relativnu cestu.
Inac nejak nechapem naco je komu zastupca, tak nech si tam da namiesto zastupcu nejaky .bat ktory bude obsahovat len jeden riadok:
..\..\Apps\Firefox.exe
a hotovo. Tej batke moze nastavit ikonu aku chce.
ŘEŠENÍ od ledního brtníka funguje:
----------------------------------------- -----------------------------------
@echo off
REM spustit z flashky, priradi/odpoji ji pismeno Q:
set flash=%CD%
set sub=Q:
%homedrive%
if exist %sub%\*.* goto NOSUBST
:SUBSTITUJ
subst %sub% %flash%
if errorlevel 1 goto ERROR
goto END
:NOSUBST
subst %sub% /d
if errorlevel 1 goto ERROR
goto END
:ERROR
subst && echo Chyba - pismeno %sub% je uz asi obsazene necim jinym && pause
:END
-------------------------------------- --------------------------------------
Moc děkuju.
A je nutné, aby to byl zástupce? Co třeba .bat soubor, mohl by obsahovat:
to zní taky nadějně, ale předchozí řešení je funkční...
ale díky třeba se mi to bude hodit zase u něčeho jinýho