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.

Comments

fleetcommand's picture

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's picture

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

In the spirit of Digital Freedom you can use and quote any content found here for no cost but by mentioning the source and the url for this site. With all of this, the maintainers of the homepage keep their copyright for the materials here. [Contact us]
© Elite Hub, 2002-2012 - Powered by Drupal - Valid XHTML