2014. március 7., péntek

VBA jelszó átnevezés (office 2007-2010)

Szeretnénk neked most bemutatni egy hasznos tippet arról, hogy hogyan is tudsz más jelszót adni az .xlsm fájlban szereplő makrónak. 
Az alábbi lépéseket kell végrehajtanod:
1. Hozz létre egy új xlsm (makróbarát excel munkafüzet) fájlt.
2. Nyomj ALT+F11-et, hogy megnyíljon a VBA szerkesztő.


      Majd a Projekt nevén kattints az egér jobb klikkjével és válaszd a "VBAProject Properties" menüpontot.
      Ezután válaszd a "Protection" fület, majd pipáld ki a "Lock project for viewing"-et és alulra írd be a jelszót.
      OK-zd le majd mentsd el és zárd be az Excel-t.

3. A következő lépésben nyiss meg egy fájkezelőt (pl. Totalcommander-t), majd keresd meg az elmentett fájlodat, ezután nevezd át a kiterjesztést "zip"-re (előtte ha gondolod csinálj egy másolatot biztos ami biztos), majd nyisd meg a tömörítményt. (esetleg csomagold ki.)
  

4. Keresd meg a fájl-ban, az "xl" mappában a "vbaProject.bin" fájlt, tömörítsd ki. 
5. Nyisd meg az előbb kibontott vbaProject.bin állományt egy HEX editor-ral.
(esetleg segítségként ezzel).
6. Majd keresd meg és másold ki a DPB értékét. Valami ilyesmit kell keresned, de ugye a DPB értéke nem ez lesz: DPB = "282A84CBA1CBA1345FCCB154E20721DE77F7D2378D0EAC90427A22021A46E9CE6F17188A". (Ez egy generált érték "makro" szó, mint jelszóból.)


7. Most tegyük ugyanezen lépéseket a módosítani kívánt xlsm fájlunkkal, 3. - 6. pont szerint, az utolsó lépésnél az állományban szereplő DPB értékét cseréljük le az általunk kívánt (lásd fenti példa) értékre.
(Megjegyzés: ha a másolt érték kisebb, mint a titkosított fájl eredeti értéke, akkor fel kell tölteni annyi 0-val, hogy az érték megfelelő hosszúságú legyen.)

8. Ezután a módosított "vbaProject.bin" fájlunkat másoljuk vissza a tömörítvényünkbe.
9. Változtassa vissza a kiterjesztést ".zip"-ről ".xlsm"-re.
10. Ezután nyissuk meg a fájlt és a már általunk megadott jelszóval hozzáférünk a kódhoz.

Esetleg még egy leírás, hasonló megoldással itt nézheted meg (angol)

Jó munkát!

2014. január 10., péntek

Registry beállítások - trükkök

Regisztrációs adatbázis felépítése:

HKEY_CLASSES_ROOT (HKCR):
Alapvetően kétféle adatot tárol:
  • fájlkiterjesztésekhez rendelt alkalmazásokat
  • COM objektumok konfigurációs adatait
Ténylegesen nem egy önálló ágról van szó, hanem a HKEY_LOCAL_MACHINE\SOFTWARE\Classes és a HKEY_CURRENT_USER\SOFTWARE\Classes alágak másolatáról. Bármelyik helyen módosított adat átkerül a másik ágba is. Két egymásnak ellentmondó változtatás esetén az utóbbit veszi át. 

HKEY_CURRENT_USER (HKCU): 
Az aktuálisan bejelentkezett felhasználó beállításait tartalmazza, tulajdonképpen a felhasználói profil egy része. Az itt található információ az NTUSER.DAT fájlból töltődik be a bejelentkezést követően - amely a profilokban helyezkedik el (alapértelmezés szerint a \Documents and Settings\felhasználónév mappában). Az alkalmazások beállításait, képernyő színeket, biztonsági adatokat és egyéb egyéni beállításokat foglal magába. A klasszikus WIN.INI fájl továbbfejlesztésének tekinthető. Hasonló adatok találhatók a HKEY_LOCAL_MACHINE ágban is, de a HKEY_CURRENT_USER beállításai elsőbbséget élveznek, például a felhasználó által definiált környezeti változók felülírják a rendszerváltozókat (különben nem lehetne őket megváltoztatni). 

HKEY_LOCAL_MACHINE (HKLM)
A számítógép konfigurációs beállításait foglalja magába. Itt tárolódik a felhasználó lista, a hardverelemek illesztőprogramjai és a szoftverek konfigurációs adatai. A merevlemez %systemroot%\system32\config mappájában lévő fájlokban találhatók meg mindezek. 
                                        
HKEY_USER: 
Az alapértelmezett felhasználói profil (default profile) és a HKEY_CURRENT_USER egy részének másolatát foglalja magába. Az itt található almappák között a nevükbe foglalt felhasználói biztonsági azonosító (SID) szerint lehet különbséget tenni. 

HKEY_CURRENT_CONFIG: 
Az aktuálisan használt hardverprofilt tartalmazza. Ismét nem egy önálló ágról, hanem a HKEY_LOCAL_MACHINE\System\CurrentControlSet\Hardvare Profiles\Current másolatáról van szó. Megtalálhatók benne a rendszer illesztőprogramjainak és használandó szolgáltatásainak (services) konfigurációs paraméterei. 
Ha rákattintunk a faszerkezetet kibontó + jelekre, megnyílnak az adatok és további mappák. A mappákat kulcsnak (key) nevezzük, létrehozásukhoz kattintsunk a Szerkesztés > Új > Kulcs (Edit > New > Key) menüpontra vagy egy üres ablakterületen a jobb oldali egérgombbal és a megjelenő menüben az Új > Kulcs (New > Key) sorra. Adatot létrehozni ugyanígy lehet, az alábbi típusok felhasználásával: 

REG_SZ = Karakterlánc (String Value): 
Egy egyszerű sztring (1 sor). 

REG_BINARY = Bináris érték (Binary Value): 
Bármilyen hexadecimális (vagy karakteres) formában megadott bitsorozat. 

REG_DWORD = Kétszó (DWORD): 
Kétszó vagy más néven duplaszó. 4 bájtból azaz 32 bitből álló decimális vagy hexadecimális szám. 

REG_EXPAND_SZ: 
0 végű tömörített karakterlánc a környezeti változók tárolására (pl. %PATH%). A feloldást az "ExpandEnvironmentStrings" Windows függvénnyel lehet elvégezni. 

REG_MULTI_SZ : 
Több soros karakterlánc. 

REG_DWORD_LITTLE_ENDIAN: 
Ugyanaz, mint a REG_DWORD csak "Little Endian" formátumban tárolva: 4 byte-os szám, ahol a legalacsonyabb byte a legalacsonyabb címen kap helyet, a következő előtte és így tovább - a 0x12345678 érték így tárolódik: 0x78 0x56 0x34 0x12. 

REG_DWORD_BIG_ENDIAN: 
4 byte-os szám "Little Endian" formátumban tárolva, ez az előző fordítottja: a legmagasabb byte van a legalacsonyabb címen - a 0x12345678 érték így tárolódik: 0x12 0x34 0x56 0x78. 

REG_LINK: 
Unicode szimbolikus link, belső használatra. Az alkalmazások nem használhatják ezt a típust. 

REG_NONE: 
Nem definiált értékű típus. 

REG_QWORD: 
64 bites szám. 

REG_QWORD_LITTLE_ENDIAN: 
64 bites szám " Little Endian" formátumban. 

REG_RESOURCE_LIST: 
Eszközmeghajtó program lista a hardver erőforrások számára vagy egy fizikai eszközvezérlő a \ResourceMap ágból. 

REG_RESOURCE_REQUIREMENTS_LIST: 
A lehetséges hardver erőforrások eszközmeghajtó listája vagy egy fizikai eszközvezérlő a rendszer által készített \ResourceMap ágból. 

REG_FULL_RESOURCE_DESCRIPTOR: 
Hardver erőforráslista a felismert, használt és \HardvareDescription ágban a rendszer által írt fizikai eszközökről.
 


Aero snap kikapcsolása
Sokan szeretik, sokan gyűlölik az Aeróból a Win7-be is átkerült „snap”, azaz ragadós ablak funkciót. A dolog lényege: ha egy ablakot megfogunk és a képernyő szélére „ragasztjuk”, akkor automatikusan félképernyős lesz, ha a munkaasztal tetején tesszük ugyanezt, akkor automatikusan teljes méretűvé válik.
A funkció nem rossz, sőt ha megszokjuk, kifejezetten hasznos, de mi a teendő, ha képtelen vagyunk megszokni, és az őrületbe kerget? Szerencsére kikapcsolhatjuk! A szóban forgó kulcs a
HKEY_CURRENT_USER/Control Panel/Desktop.
A kulcson belül a jobb oldalon keressük meg a „WindowArrangementActive” bejegyzést (egy kicsit le kell hozzá gördítenünk a listát) , klikkeljünk rá kettőt, és az alapesetben 1-re állított (Aero snap engedélyezve) értéket írjuk át „0”-ra.

Tálca-előnézet késleltetési idő
Bár magyarul roppant bután hangzik, vigasztaljon a tudat, hogy angolul sem jobb: „taskbar preview delay time”. A Win7 kellemes újítása, hogy az egeret a tálcán levő alkalmazások fölött tartva egy apró előnézeti képet látunk, így sokkal könnyebben megtaláljuk a szükséges futó programot. Egyetlen apró gond van ezzel a funkcióval: be van építve egy pár másodperces késleltetés, és ez bizony sok felhasználót idegesít. Szerencsére van rá mód, hogy felgyorsítsuk az apró előnézeti képek megjelenését (vagy lelassítsuk, ha ahhoz lenne kedvünk). A szükséges, igen hosszú nevű kulcs:
 HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerAdvanced
 Kattintsunk rá a jobb egérgombbal, és a felbukkanó menüből válasszuk az új/duplaszó (new/dword) opciót. (Néhány verzióban ez „Dword(32Bit)” vagy „DwordValue” is lehet).
A most létrehozandó duplaszó neve legyen „ExtendedUIHoverTime.” (fontos, hogy a végén van egy pont is – az idézőjel természetesen nem szükséges). Kattintsunk duplán az újonnan létrehozott dword-re. Válasszuk ki a „módosítást”, majd itt jelöljük be a decimális értéket. Az „érték” mezőbe írjuk be az időt (milliszekundum), azaz hogy mennyit várakozzon a felbukkanó preview ablak. Az alapbeállítás 400 ms, ha túl soknak találjuk, akkor adjunk meg 200-at vagy 100-at. Ha akarjuk, teljesen el is tüntethetjük ezt a funkciót egy kis trükkel: adjunk meg nagyon magas értéket (9999), és akkor sosem fogjuk viszontlátni az előnézet-ablakot.