30. 1. 2007
Upgrade na Windows Vista zneplatní váš XP kód
Pokud si Windows Vista koupíte jako upgrade Windows XP, tak se automaticky při první instalaci Visty váš instalační kód pro Windows XP zneplatní a nepůjde tedy už aktivovat. V podstatě to má svoji logiku, protože upgrade je vlastně přenesení licence na nový produkt.
V licenčním ujednání (EULA) Windows Vista o tom hovoří bod 13:
13. UPGRADES. To use upgrade software, you must first be licensed for the software that is eligible for the upgrade. Upon upgrade, this agreement takes the place of the agreement for the software you upgraded from. After you upgrade, you may no longer use the software you upgraded from.
Zdroj:
26. 1. 2007
Microsoft SQL Server 2005 - zálohování databází
Návod, jak nejjednodušeji vytvořit dávku nebo job, kterým zazálohuji databázi SQL Serveru 2005 (2000 nebo 7.0)
Nechci se zabývat tím, jak zálohování naklikat nějakým grafickým nástrojem jako je například Management Studio nebo Enterprise Manager. Zaměřím se na psaní dávky nebo jobu.
Součástí instalace každého SQL Serveru 2005 (tedy i Express Edition) je řádková utilita SQLCMD, která slouží k dávkovému spouštění SQL-skriptů. A my využijeme příkazu BACKUP DATABASE takto:
SQLCMD.EXE -S JmenoServeru -E -Q "BACKUP DATABASE JmenoDatabaze TO DISK='C:\Cesta\JmenoDatabaze.bak' WITH INIT"
Význam jednotlivých parametrů (pozor, jsou case-sensitive, takže záleží na velikosti, -e a -E by bylo něco jiného):
-S JmenoServeru
Jméno SQL Serveru, na který chci SQL-skript poslat. Jméno může obsahovat specifikaci protokolu (tcp:, np:, lpc:; pozor: prefixy musí být malými písmeny!) a/nebo portu - viz příklady:-S SERVER01
-S tcp:SERVER01
-S tcp:192.168.1.1
-S tcp:192.168.1.1,14333
-E
Říká, že se mám přihlašovat Windows autentikací (také se jí dříve říkalo NT autentikace). Pokud by se někdo chtěl přihlašovat jménem a heslem, tak by parametr -E nahradil -U jméno a -P heslo.
-Q "BACKUP DATABASE..."
Za parametrem -Q je v uvozovkách SQL-příkaz, který chceme na SQL Server poslat. Samozřejmě identifikátor JmenoDatabaze musíte nahradit svým jménem databáze. Klauzule WITH INIT říká, že v případě, že soubor C:\Cesta\JmenoDatabaze.bak už existuje, bude přepsán. Pokud by tam tato klauzule nebyla, tak by záloha byla přidána na konec existujícího souboru a .BAK soubor by postupně rostl.
Pro SQL Server 2000 nebo 7.0 bychom místo SQLCMD.EXE použili OSQL.EXE (je i ve verzích MSDE 1.0 a MSDE2000).
Tento příkaz můžete vložit do dávky (.CMD nebo .BAT soubor) nebo z něj udělat job přes Naplánované úlohy (Scheduled Tasks v anglických Windows).
Pokud chcete zálohování urychlit, podívejte se do mého článku TZblok: Výrazné urychlení zálohování na Microsoft SQL Serveru.
Pro úplnost ještě uvádím, jak by vypadala obnova databáze (RESTORE DATABASE):
SQLCMD.EXE -S JmenoServeru -E -Q "RESTORE DATABASE JmenoDatabaze FROM DISK='C:\Cesta\JmenoDatabaze.bak' WITH REPLACE"
Štítky: SQL Server
24. 1. 2007
Omezení Microsoft SQL Server 2005 Express Edition
Microsoft SQL Server 2005 Express Edition je edice SQL Serveru 2005 dostupná zdarma. Má ale nějaká omezení:
- Velikost jedné databáze (MDF soubor) je omezena na 4 GB. Do této velikosti se nezapočítává velikost transakčního logu (LDF soubor). Databází ale mohu mít "neomezeně" (přesně: 32 767).
- Je využíván jen jeden procesor. Neumí tedy využít výhod více procesorů nebo technologií jako HyperThreading (HT).
- Je využíván maximálně 1 GB operační paměti (RAM).
- Neobsahuje službu SQL Server Agent. Není tedy možné spouštět joby a maintenance plány.
- Neobsahuje žádnou "enterprise feature", jako například: OLAP, Integration Services (SSIS), Notification Services, Report Builder, Log shipping, Database Mirroring, Fail-over Clustering apod.
Není nijak omezen počet současně přihlášených uživatelů, ani není žádným způsobem zpomalováno vyhodnocování dotazů známé z MSDE 2000 (Workload Governor).
Stáhnout se dá zde:
- Microsoft SQL Server 2005 Express Edition Service Pack 1 (exe, 53,8 MB)
jedná se o SQL Server 2005 Express Edition se zaintegrovaným SP1 - Service Pack se nemusí tedy instalovat zvlášť, už tam rovnou je
Instalace vyžaduje Microsoft .NET Framework 2.0.
Podporované operační systémy:
Windows 2000 Service Pack 4 (SP4)
Windows XP Service Pack 2 (SP2)
Windows 2003 Service Pack 1 (SP1)
Windows Vista
Dále lze volně stáhnout grafický nástroj pro správu SQL Serveru 2005 Express Edition (něco jako Enterprise Manager známý z SQL Serveru 2000):
- Microsoft SQL Server Management Studio Express (msi, 38,4 MB)
Poznámka:
- Není k dispozici x64 (64bitová) verze SQL Server 2005 Expres Edition. Na x64 operačních systémech Windows je ale možné normálně používat x86 (32bitovou) verzi.
- Verze pro IA64 (Itanium) také není k dispozici a x86 verze na Windows IA64 není podporována.
Štítky: SQL Server, SQL Server Express Edition
20. 1. 2007
Řádkové parametry Internet Exploreru 7
Normální řádkové parametry IE7, se kterými lze IEXPLORE.EXE spouštět:
- -k
- skutečný kiosk mód; tedy něco podobného jako fullscreen mód (klávesová zkratka F11), ale bez možnosti vypnutí
(funguje i v IE6)
- -extoff
- nenačte žádné doplňky (add-ons)
- -nohome
- přeskočí zobrazování home page (velmi vhodné při použití s URI parametrem)
(funguje i v IE6)
- [URI]
- otevře lokální nebo internetovou adresu
(funguje i IE6)
Typický příklad příkazové řádky by byl:
"%ProgramFiles%\Internet Explorer\IEXPLORE.EXE" -nohome http://www.seznam.cz/
Následující parametry nemají časté použití s výjimkou, kdy se MSIE používá jako COM server:
- -embedding
- Application started via OLE Automation, causes IE to start with no chrome or any other UI.
- -restart
- Application is restarting after crash (informational only). Starts IE normally
- -brokerredirect
- Application started by user broker (informational only). Starts IE normally
Starší parametry, které již nejsou podporovány:
- -eval
- -new
- -nowait
- -e
Štítky: IE, Internet, Internet Explorer, MSIE
19. 1. 2007
Evoluce webkodéra/webdesignéra
Prosím, nebrat osobně:).
1. Střední škola
hello.htm:
Hello world!
Kompatibilita:
- funguje ve všech internetových prohlížečích a textových editorech, na které si jen vzpomenete
- přečte i váš pes a oedituje i vaše babička
2. První ročník vysoké školy
hello.html:
<Html>
<Body>
Hello world!
</body>
</html>
Kompatibilita:
- funguje ve všech prohlížečích (včetně textových a mobilních)
- vaše babička to s trochou snahy stále může oeditovat
3. Vyšší ročníky vysoké školy
hello3.html:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Hello world!</title>
<META NAME="DESCRIPTION" CONTENT="This is a cool hello world example!">
<META NAME="KEYWORDS" CONTENT="cool,hello,world,example">
</head>
<body>
Hello world!
</body>
</html>
Kompatibilita:
- funguje ve všech prohlížečích (včetně textových a mobilních)
- kód je validní
4. Vyšší ročníky vysoké školy - varianta hacker
hello3.html:
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
</head>
<body>
hello world!
</body>
</html>
Kompatibilita:
- n1kd0 n3tus1
5. Začínající PHP vývojář
hello4.php:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Hello world!</title>
</head>
<body>
<?
echo("Hello world!" );
?>
</body>
</html>
Kompatibilita:
- funguje ve všech prohlížečích (včetně textových a mobilních)
- je potřeba PHP
- validní, pokud nějaký jiný vývojář nezmění písmenko
6. Zkušený PHP vývojář
hello5.php:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Hello world!</title>
</head>
<body>
<?
include "inc/class_hello_world.php";
$hello_world_class = &New class_hello_world;
$hello_world_class->display_hello();
?>
</body>
</html>
inc/class_hello_world.php:
<?php
class class_hello_world{
var $hello = 'Hello world!';
function display_hello(){
echo $this->$hello;
return 0;
}
}
?>
Kompatibilita:
- funguje ve všech prohlížečích (včetně textových a mobilních)
- je potřeba PHP (doporučena verze 4 nebo 5)
7. Designér začátečník
hello3.html:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Hello world!</title>
</head>
<body>
<blink><font face="Arial" size="2" color="#800080">Hello world!</font></blink>
</body>
</html>
Kompatibilita:
- funguje ve všech prohlížečích (včetně textových a mobilních)
- jde na nervy snad každému na světě
8. Profesionální designér začátečník
hello3.html:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Hello world!</title>
<link rel="stylesheet" href="css/main.css" type="text/css">
</head>
<body>
<span class="hello">Hello world!</span>
</body>
</html>
css/main.css:
.hello {
font-family: Arial;
color: #990066;
}
Kompatibilita:
- vyžaduje prohlížeč s podporou CSS
- NN4+, IE4+, FF, Opera 3.6+
- na některých mobilních prohlížečích mohou být problémy se stylopisem
9. Profesionální architekt CSS frontendu
hello_world_v03a.html:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Hello world!</title>
<link rel="stylesheet" href="css/main.css" type="text/css">
<style type="text/css" media="all">@import "css/main.css";</style>
<style type="text/css" media="all">@import "css/bugfix.css";</style>
<!--[if lte IE 6]><style type="text/css" media="all">@import "css/bugfix_ie6.css";</style><![endif]-->
<!--[if gt IE 6]><style type="text/css" media="all">@import "css/bugfix_ie7.css";</style><![endif]-->
<link rel="alternate" type="text/html" media="handheld" href="http://helloworldmobile.com/" title="Mobile/PDA">
<link rel="icon" href="http://helloworld.com/favicon.ico" type="image/x-icon">
</head>
<body>
<span class="hello">Hello world!</span>
</body>
</html>
Tady by měly být 4 CSS soubory, ale nechci obtěžovat.
Kompatibilita:
- kompatibilní s "nejmodernějšími prohlížeči"
- za určitých okolností IE6, IE7, FF, Opera renderuje text špatně
- s každým service packem na IE bude potřeba úprava CSS souborů (rada: najmi dalšího Profesionálního architekta CSS frontendu)
10. Nižší manager
hello.doc:
Hello world!
File > Export HTML page...
11. Střední manager
mail -s "Hello, world." bob@b12
Bobe, můžeš mi, prosím, napsat webovou stánku, která vypíše "Hello, world"?
12. Senior manager
% zmail jim
Potřebuji stránku "Hello, world" do odpoledne.
13. Top manager
zavolá senior managerovi:
Kde je, k sakru, moje stránka "Hello, world"? Schůzka s klientem začíná za 10 minut!
14. MySpace administrátor
Budeme potřebovat více serverů na obsluhu stránky "Hello, world".
15. Windows developer
nainstaluje Visual Studio 2005
spustí Visual Studio
Google > "ASP 2.0 hello world"
do češtiny volně přeloženo ze zdroje:
Štítky: Vtipy
16. 1. 2007
Google Analytics trik: získání full referreru v reportech
Na del.icio.us jsem našel zajímavý link: standardně Google Analytics odřízne z referreru cestu k souboru. Pokud chceme znát celý referrer, tak existuje jedna možnost. Celý trik spočívá v tom, že se JavaScript použije místo standardního zápisu:
.
.
<script type="text/javascript">
_uacct = "UA-xxxxxx-y";
urchinTracker();
</script>
</body>
takto:
<body onload="javascript:urchinTracker(document.referrer);">
Výsledek pak v reportech vypadá nějak takto:
(c) Reuben Yau
zdroj:
Štítky: Google, Google Analytics
15. 1. 2007
Český Internet Explorer 7 je ke stažení
Před malou chvílí se na webu Microsoftu objevil český a slovenský Internet Explorer 7:
- Internet Explorer 7: soubory ke stažení (cz - česká verze)
- Program Internet Explorer 7: Súbory na prebratie (sk - slovenská verze)
Internet Explorer 7 je možné spustit v systémech:
- Windows XP Service Pack 2 (SP2) Home nebo Professional
přímý link ke stažení - česká verze (14,1 MB)přímý link ke stažení - slovenská verze
- Windows XP Professional x64 Edition
- Windows Server 2003 Service Pack 1 (SP1)
Pozor, bude vyžadováno ověření pravosti systému Windows!
Pokud naopak nechcete, aby se vám MSIE7 nainstaloval automaticky přes službu Windows Update (nebo Microsoft Update), tak postupujte podle mého staršího článku:
Štítky: IE, Internet, Internet Explorer, MSIE
12. 1. 2007
WinRAR 2.7 beta 1 - příprava na Windows Vista
Byl zveřejněn WinRAR 2.7 beta 1. Novinky v této verzi se týkají především Windows Vista:
- připravenost na Vista UAC
- změněn formát helpu HLP -> CHM
- podpora pro Vista ISO soubory (ISO 13346 / UDF)
- drobné změny v designu
Kompletní seznam novinek zde:
Jak zamezit automatické instalaci Internet Exploreru 7 - IE7 blocker
A jelikož se blíží doba (podle některých zdrojů to má být už v pondělí 15. 1. 2007), kdy bude automaticky na všechny (legální) české instalace Windows XP přes Windows Update nainstalován Microsoft Internet Explorer 7, je třeba si říci, jak tomu případně zamezit.
Sám Microsoft uveřejnil 103KB utilitku, která se o to postará:
Tento prográmek vlastně neudělá nic jiného, než že do registrů zapíše tyto údaje:
cesta: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Setup\7.0
klíč: DoNotAllowIE70
typ: REG_DWORD
hodnota: 1
Štítky: IE, Internet Explorer, MSIE
11. 1. 2007
Finální verze Microsoft SQL Server 2005 Compact Edition
Dnes byla uvolněna finální verze Microsoft SQL Server 2005 Compact Edition (zkratka SSce) pro Windows. Je to je 1,73 MB velký MSI instalační balíček.
Původně se produkt měl jmenovat SQL Server Everywhere Edition (používala se také zkratka SSEv), ale Microsoft usoudil, že to není vhodný název.
A co to tedy vlastně je, ta Compact Edition?
- je to tzv. embedded (in-memory) databáze (jako například Firebird Embedded nebo mSQL), jednoduše řečeno je to pár (8) DLL-ek, které si aplikace natáhne (samozřejmě to, narozdíl od "velkého" SQL Serveru, neběží jako služba)
- použití si dovedu představit tam, kde to ještě není na SQL Server 2005 Express Edition a už to není na nějaký jednoduchý XML nebo INI soubor
- měla by nahradit JET
- je zdarma (stejně jako Express Edition)
- podporuje podmnožinu Transact-SQL z "velkého" SQL Serveru; co je přesně podporováno, naleznete v dokumentaci: SQL Server 2005 Compact Edition Books Online, která bohužel ještě není ke stažení :(
- na správu lze použít Management Studio z SQL Serveru 2005 SP2+
- vyžaduje .NET framework 2.0
Moje poznatky:
- pokud máte nainstalovánu nejakou starší verzi SSEv nebo SSce, tak ji nejprve musíte odinstalovat
- instalátor chce jen cestu, kam se mají DLL-ka nasypat, nic jiného - viz obrázek výše
- jako provider do ConnectionString se používá: Microsoft.SQLSERVER.MOBILE.OLEDB.3.0
- podporovány jsou:
+ tabulky (CREATE TABLE)+ pohledy (CREATE VIEW)
+ datové typy: INT, SMALLINT, TINYINT, BIGINT, BIT, DATETIME, NUMERIC, REAL, FLOAT, MONEY, NVARCHAR, NCHAR, NTEXT, UNIQUEIDENTIFIER, VARBINARY, BINARY, IMAGE
+ vlastnost IDENTITY
+ PRIMARY KEY / UNIQUE constraints
+ indexy - podporovány nejsou:
- uložené procedury (stored procedures)
- uživatelsky definované funkce (UDF)
- datové typy: CHAR, VARCHAR, musím použít jejich UNICODE varianty NCHAR a NVARCHAR - databázový .SDF soubor lze chránit heslem a/nebo šifrovat
Štítky: SQL Server, SQL Server Compact Edition
10. 1. 2007
Finální verze Google Earth 4 ke stažení
Na obvyklé adrese je ke stažení finální verze Google Earth 4. K dispozici jsou verze pro:
- Windows 2000 / XP / Vista (14,2 MB)
- Mac OS X 10.3.9+ (29,6 MB)
- Linux (20,6 MB)
Oproti verzi 3 se nejedná o žádnou revoluci, ale i tak bylo pozměněno nebo vylepšeno mnoho věcí. Z těch nejviditelnějších například toto:
- možnost ovládání herními ovladači (jen ve verzi pro Windows)
- některé budovy jsou texturované (například Koloseum)
- zjednodušení a zpřehlednění uživatelského rozhraní
- kolečko na myši funguje naopak, než bylo zvykem v dřívějších verzích (lze změnit v nastavení)
- ve full screen módu (F11) lze vyhledávat
Více v seznamu změn a vylepšení zde: Google Earth 4 – What’s New?. Úplně kompletní changelog jsem na webu Google Earth nenašel, je ale v souboru ReleaseNotes.txt v adresáři, kde je Google Earth nainstalován.
Štítky: Google, Google Earth
9. 1. 2007
Výrazné urychlení zálohování na Microsoft SQL Serveru
Zálohování na SQL Serveru (2005 i 2000) lze velmi jednoduše výrazně urychlit - příkaz BACKUP DATABASE má volitelný parametr BLOCKSIZE, kterým mohu SQL Serveru předepsat velikost bloku, po kterých bude záloha zapisována na médium.
Pokud tento volitelný parametr neuvedu, tak se SQL Server pokusí tuto hodnotu odhadnout automaticky, očividně ne však optimálně.
Pokud použiji nejvyšší možnou hodnotu, což je 65536 (=64 KB), dosáhnu nejvyšší rychlosti.
Takže T-SQL syntaxe by pak vypadala například takto:
BACKUP DATABASE JmenoDatabaze TO DISK='C:\Cesta\JmenoDatabaze.bak' WITH BLOCKSIZE=65536
Podle mých měření na slabším hardware a 300MB databázi se urychlení pohybovalo kolem 50 %. Podle tohoto zdroje je urychlení (na výrazně lepším HW) až pětinásobné!
Štítky: SQL Server
7. 1. 2007
Myslíte si, že není možné, aby FavIcon vašeho blogu vygeneroval měsíční traffic 27 GB?
Myslíte si, že není možné, aby FavIcon vašeho blogu vygeneroval měsíční traffic 27 GB? Scott Hansellman se svým blogem Computer Zen si to také myslel.
Jeho FavIcon totiž byla Windows Vista-like, neboli obsahovala všechny možné velikosti i formáty, což ve výsledku dalo 70KB FavIcon soubor. Poté, co ikonu rozumně ořezal na 4 KB, mu traffic spadl na 95 % původních hodnot o 95 %.
Scott Hanselman's Computer Zen - FavIcon.ico can be a bandwidth hog
Související odkazy:
What's New with Vista Icons?
6. 1. 2007
Dávky ve Windows: pozastavení dávky na n sekund
Čas od času potřebuji napsat dávku, která by něco provedla, pak několik sekund počkala a pak pokračovala. Když jsem na Internetu hledal, jak by se to "počkání" dalo zařídit, narazil jsem nejprve na různé dodatečné utility - jako například:
- Sleep.exe z Windows Resource Kitu
Další možností by bylo si tuto utilitku sám naprogramovat. V Delphi nebo C# by to byla práce na 10 minut.
Pak jsem ale přišel na geniálně prosté řešení - není potřeba žádná další utilita, žádný Resource Kit - stačí obyčejný PING, který je v každých Windows - takto:
PING -n 3 127.0.0.1 >NUL kde 3 znamená počet sekund
127.0.0.1 je IP adresa tzv. loopbacku, abych nemusel řešit, jestli jsem připojen k síti nebo ne
>NUL zajistí, aby se nic nevypisovalo na obrazovku.
Jak prosté!
4. 1. 2007
Anomálie v Google Analytics?
Že údaje ve statistickém nástroji Google Analytics nejsou online je jasné. Většinou se zpoždění, dle mých pozorování, pohybuje mezi 4 - 5 hodinami.
Ale všiml jsem si, že hodnoty pro 23. hodinu se objevují až s mnohem větším zpožděním, dokonce až mnohem později, než začnou nabíhat údaje za další den! Jinak podotýkám, že tento jev pozoruji opakovaně, není to nějaká jednorázová záležitost.
Před:
Po:
V profilu mám samozřejmě nastaveno:
Time zone country or territory: Czech Republic
Time zone: (GMT+01:00) Central European Time
Všimli jste si něčeho podobného? Máte pro to nějaké vysvětlení?
Štítky: Google, Google Analytics
1. 1. 2007
PF 0x7D7
- co nejméně service packů, které nejdou nainstalovat, případně jejich instalace trvá několik hodin
- co nejméně webových stránek, které se načítají celou věčnost
- co nejméně končících zajímavých webových projektů
- co nejméně blogerských válek
- a na závěr: co nejvíce geniálních nápadů
Malá nápověda pro neznalé: