DC++ és a felhasználói profilok

A DC++ fejlesztői is belátták korábban, hogy jó dolog ha egy alkalmazást több mentett beállítással lehet használni, attól függően, hogy ki, mikor, hogyan akarja használni. Sok programban profilnak nevezik ezt a lehetőséget.

Látható, hogy a fejlesztők már tettek is a profilozás létrehozása érdekében bizonyos dolgokat. (Pl.: dcppboot.xml - ebben a fájlban tárolja a DC++, hogy melyik könyvtárba mentse a settings fájlokat)

Mivel én otthon aktivként, a munkahelyen router miatt pedig passzivként használom a programot, ezért jól jönne ha lehetne két külön profilom a DC++-hoz. Motivált továbbá Fleet cikke is, miszerint hamarosan a kedvenc hubok automatikus csatlakozása kikerül a programból.

Nos nézzük, hogyan lehet több beállítással (profillal) használni a DC++-t.

  • Ha letöltjük a tömörített DC++ binárist, akkor két különböző könyvtárba ki tudjuk csomagolni, és nincs más dolgunk, mint a két programot külön-külön beállítani a két profilunknak megfelelően. Ügyeljünk arra, hogy egyszerre csak egy kliensünk futhat.
  • A második lehetőség, hogy egy alkalommal telepítjük a programot, és használjuk a DC++ kezdetleges profil kezelését. Vagyis a kedvünk szerint alakítjuk a dcppboot.xml fájlt.

Az első dolog magáért beszél, azonban nekem nem túl szimpatikus, ezért a második lehetőséget vázolnám.

Először is nézzük meg, mi is van abban a dcppboot.xml-ben

<Boot>
	<!--
	LocalMode runs DC++ in local mode, where all defaults are relative to the ConfigPath set below.
	This is useful when running DC++ off a USB stick or if you want to keep all in a single folder.
	The default is to run in LocalMode, but the installer installs a dcppboot.xml file that overrides
	the default.
	When LocalMode is disabled, ConfigPath is ignored.
	Set to 1 to enable, 0 to disable
	
	<LocalMode>1</LocalMode>
	-->

	<!-- 
	ConfigPath specifies where settings, queue and other runtime data should be saved.
	Relative paths are relative to the DC++ executable.
	You may use the following variables, which are interpreted on a per-user basis:

	%[APPDATA] - Application data, typically c:\documents and settings\\Application Data\
	%[PERSONAL] - My documents
	
	All % variables from strftime with the current time: 
	http://msdn.microsoft.com/library/en-us/vclib/html/_crt_strftime.2c_.wcsftime.asp

	<ConfigPath>.\</ConfigPath>
	-->
</Boot>

Ebből látható, hogy két érdekes dolog van az xml-ben. Az első a LocalMode, ami azt határozza meg, hogy használja-e a DC++ a ConfigPath-ot vagy sem. A ConfigPath-ban pedig a beállítások mentésének könyvtára található.

Sajnos a DC++ nem rendelkezik parancssori kapcsolóval (mint a Firefox), így nem tudjuk parancssorban megadni, hogy melyik dcppboot.xml-t használjuk, vagy ami még jobb lenne, ha meg tudnánk adni, melyik könyvtárból szedje a program a beállításokat.

Szóval készítettem két közel azonos tartalmú cmd fájlt a DC++-om könyvtárába, ami átírja a dcppboot.xml-t úgy, hogy mindig a kívánt profillal induljon el a program.

set LOCAL=1
set PROFILE=%%[PERSONAL]\BCDC++\Chat-only\

@echo off

rem Delete dcppboot.xml
del dcppboot.xml

rem Create dcppboot.xml with selected "profile"
echo ^<Boot^> >> dcppboot.xml
echo     ^<LocalMode^>%LOCAL%^</LocalMode^> >> dcppboot.xml
echo     ^<ConfigPath^>%PROFILE%^</ConfigPath^> >> dcppboot.xml
echo ^</Boot^> >> dcppboot.xml

rem Start DC++
start DCPlusPlus.exe

A cmd fájl elején található két változó. Pontosan ez a kettő változó van a dcppboot.xml-ben is. Tetszés szerint módosítható a PROFILE változó értéke. A LOCAL-t ne változtassuk, mert ha 0-t adunk neki, nem fogja a DC++ figyelembe venni a PROFILE beállítását.

Ha elkészültünk a fájlokkal, akkor a cmd-k inditásával tudjuk inditani a DC++-t. Parancsikont hozhatunk létre a fájlokhoz, ikont rakhatunk hozzájuk stb.

Hozzászólások

fleetcommand képe

Eredetileg a dcppboot.xml azzal a céllal született, hogy egy gépen több felhasználó is tudja használni ugyanazt a telepített dc-t (pl úgy, hogy az xml fájlok bekerülnek a profilkönyvtárba). Továbbá az is a cél volt, hogy Windows Vista alatt ne legyen probléma a virtualizált program files könyvtár miatt.

Amúgy érdekes, így, ahogy te mondod, valóban több "profil" kialakítható, jó ötlet lehet :)

CyB képe

Elvileg működik (vagyis gyakorlatilag is) mert én már igy használom :)

Az itt található anyagok a digitális szabadság jegyében a forrás és az elérhetőség linkjének megjelölésével szabadon felhasználhatók, idézhetők. Jelen honlap üzemeltetői mindemellett fenntartják az itt elérhető tartalom összes szerzői jogát. [Kapcsolat]
© Elite Hub, 2002-2012 - A Drupal motor hajtja - Valid XHTML