16 november, 2007

Office: Access 2007 Runtime - Blank skärm

Förord
Använder ni Access 2007 Runtime för att distribuera era databaser till kunder eller annan part? Om ni testar att öppna databasen och får en blank skärm (helt tomt) så hittar ni svaret här.

Introduktion
Först ska jag tala om för er som inte vet vad en runtime är för något. En så kallad runtime är ett litet program som gör att användare av till exempel ett office program, i detta fallet Access 2007, kan använda det utan att köpa hela produkten. Men man kan bara läsa och inte göra några ändringar. Väldigt effektivt om man inte vill att något råkar ändra i databasens tabeller.

Problem
När man har installerat runtime-paketet och försöker öppna en databas brukar det för de flesta bli helt tomt. Man får alltså en helt blank skärm när man försöker köra det. Skälet till är att runtime-paketet tar bort alla knappar och menyer inklusive navigeringslisten till vänster.

I vanliga fall brukar man kunna välja vad man vill öppna i navigationslisten till vänster, men eftersom den är borttagen kan man inte välja något. Har man då inte ställt in i konfigurationen i Access att man vill att något skall visas som standard när man öppnar den får man en blank skärm.

Lösning
Applicera detta på databasen innan ni skickar i väg den för att senare köras med runtime-paketet. Denna lösning förutsätter att ni har ett formulär som interagerar med tabellerna.
  1. Klicka på Office-knappen längst upp till vänster.
  2. Klicka på knappen Access alternativ (Access options) längst ner till höger.
  3. I listan till vänster väljer ni Aktuell databas (Current database).
  4. Sedan väljer ni vilket formulär ni vill ska visas när databasen öppnas i listen Visa formulär (Display form).
Slutord
Jag själv hade jättestora problem med detta och det tog flera dagar innan jag fann en lösning på problemet. Jag löste det genom att felsöka med en exempel-databas (mall/template) som ingår i Access 2007. När jag då öppnade exemplet med runtime-paketet upptäckte jag att ett formulär öppnades automatiskt när databasen öppnades. Då började jag söka på Google efter inställningen som gjorde att utvalt formulär öppnas vid start.

Källor:
Google.com
Ladda formulär under start (engelska)

12 november, 2007

Programmering: En försmak av D

De flesta som är insatta vet att C är ett gammalt programmeringsspråk som sedan utvecklades till C++. Båda så kallade språken har både för och nackdelar men nu har det änligen släppts ett nytt programmeringsspråk som heter D.

Det är en blandning mellan C/C++ och Java/C#/Ruby. Faktum är att den ligger lite mitt emellan de båda grupperna. Den absolut största fördelen enligt mig och många andra är att man kan få ökad prestanda med D än med kod som är skriven i några objektorienterade språk som Java och C#. Det är som att få prestandan från C och funktionalitet samt produktivitet från andra lite mer moderna språk.

Program med prestanda i åtanke passar utmärkt för stora system och vill man komma riktigt nära hårdvaran går det också med D. Man kan till och med anropa C kod direkt i D.

En annan viktig egenskap i D är att det finns en skräpsamlare - något som allokerar och släpper minne till och från systemet. Man slipper då jobbiga pekare som kan vara svåra att arbeta med, speciellt när det blir fel.

D har funnits i snart ett år och det finns hundratals bibliotek och program som är skrivna i D.

Då kommer vi till det som alla andra programspråk börjar med och det är "Helloworld" program. Skaffa editorn Poseidon och börja med exemplet. Sedan är det bara att dreggla och börja programmera.

Hello World i D
import std.stdio;
void main()
{
writefln("Hello World!");
}


Personligen tycker jag att man ska satsa på ett lite mer populärare programmeringsspråk såsom C, Java eller PHP. Det är bara att välja o vraka.

06 november, 2007

Windows: Blockera annonser

Förord
Är ni några av de som hatar all reklam som blinkar och som försöker dra åt sig uppmärksamheten från innehållet? Vill ni veta hur man blockerar de flesta annonserna utan ett externt program i Windows (som skulle kunna innehålla spyware/adware)? Läs då vidare

Introduktion
Det finns många där ute som absolut inte gillar annonser, speciellt de som blinkar och är flashiga som drar åt sig uppmärksamheten från innehållet. Annonser hatas också för att de drar så mycket bandbredd (speciellt för er som fortfarande använder modem) när man surfar och i de flesta fall är det annonser som gör att vissa webbsidor laddas jättesegt. Jag har lösningen för era problem. Den kanske inte är så flexibel men den är effektiv.

Hur det fungerar (kort)
När man surfar till en sida eller försöker kontakta en webbadress som exv google.com så kontaktas DNS servrar som översätter adressen till ett unikt IP-nummer, exv 72.14.207.191. Detsamma gäller datornamn i nätverk.

I Windows (i detta faller XP) finns en fil som heter "hosts" och den befinner sig i katalogen "C:\Windows\System32\drivers\etc" i standardkonfigurerade system. Den har ingen filändelse men går ändå att modifiera med ett enkelt textredigeringsverktyg som exv Anteckningar. Filens uppgift är att ge Windows åtkomst till ett så kallat uppslagsverk av IP-nummer-till-namn/adresser.

Här kommer ett exempel:
# Detta är en kommentar som ignoreras
127.0.0.1 localhost

Det betyder att om man skriver in localhost i adressfältet i t.ex en webbläsare så kommer man till 127.0.0.1 vilket är den lokala datorns loopback adress. Används t.ex vid felsökning i nätverk.

Om det skulle stå följande:
127.0.0.1 www.google.com
127.0.0.1 google.com

så skulle sidan Google (.com) blockeras för åtkomst från er dator. Vill man då blockera en annonssajt kan man skriva 127.0.0.1 www.doubleclick.com om annonssajen är doubleclick. Som tur är behöver inte ni "vanliga" datoranvändare fylla i detta manuellt då det redan finns färdiga hosts-filer att ladda ner från Internet.

Några varningens ord!
Om ni laddar ner en hosts-fil från en så kallad "elak" webbsida kan phishing attacker användas mot er. Mer om detta i slutet av artikeln.

Säkerhetsluckor
Om en illasinnad hacker (eller cracker som är en typ av hacker som förstör) lyckas lägga till ett fält i hosts-filen som t.ex pekar mot www.swedbank.se med ett annat IP-nummer så skickas ni till hans/hennes server som sedan stjäl era lösenord mm. Detta gäller alla webbsidor på Internet inklusive alla pokersidor där man använder betalkort som elektronisk betalning. Detta har hänt mig (vet inte hur) men jag upptäckte det som tur var innan jag eller någon annan person utsattes för attacken. Då hade tre välkända pokersidor fått IP-nummer som gick till förfalskade pokersidor som stal lösenord och annan kontoinformation. Allt detta lagrades i hosts-filen!

Ladda ner en hosts-fil fylld med blockerade elaka sidor och annonssajter på länken här: säker hosts-fil 071106 Den har uppdaterats med ett program som heter Hostsman. Jag har kontrollerat programmet med otaliga virusskydd och sökt igenom svartlistade mjukvarulistor och inte hittat några varningar om programmet. Men med Norton Antivirus 2007 fann jag cirka 80 poster i filen som Norton trodde var falska "URLredir". De är inte falska utan pekar mot reklamservrarna som befinner sig på posterna - som är sidor för antivirusskydd.

Det är helt upp till er om ni väljer att använda filen eller inte, så med detta varningens ord från mig kan jag inte hållas ansvarig för några som helst problem som skulle orsakas av att ni följer de råd som står i artikeln.

Hoppas ert surfande går bättre utan skräp.

Sökvägen till hosts-filen i Windows XP (standardkonfiguration)
C:\Windows\System32\drivers\etc\hosts

05 november, 2007

Webbdesign: CSS2 Styla enskilda formulär objekt

CSS Tips
För att styla enskilda objekt i ett formulär på en webbsida kan man använda selektorer från CSS2.

Placera följande i huvuddelen "head" på den sida du vill applicera stilen:
<style type="text/css">
input[type="text"] {
color: #FC3;
background-color: #036;
}

input[type="password"] {
color: #333;
background-color: #CCC;
}

input[type="submit"] {
color: #CCC;
background-color: #000;
border: 3px solid #666;
}
</style>


Och följande i kroppen "body":
<form action="" method="get">
Vanligt textfält: <input type="text" name="textfield1" value="Hello World!" /><br />
Ett lösenordsfält: <input type="password" name="passwordfield1" value="Hello World!" /><br />
<input type="submit" name="skicka" value="skicka" />


Om ni har gjort rätt kommer de olika fälten ha olika färger. Allt beror på vilken typ av fält som används. Det jag dock ännu inte har lyckats med är att kunna styla radio och checkbox typer. Få ta en titt på detta problem senare.

Källor
http://www.w3.org/TR/REC-CSS2/selector.html

19 oktober, 2007

Databas: PHP och Access 2007

Artikeln tillägnad mig själv och alla ni som håller fast vid Access
istället för MySQL eller någon annan databaslösning.


Förord
I denna artikeln ska jag gå igenom hur man ansluter till en Microsoft Access 2007 databas av typen "accdb". Varför? För att det nästan inte finns några guider om hur man åstadkommer detta på Internet. Häng med när vi kopplar ihop ett öppen källkods projekt med en Microsoft produkt, som jag i fortsättningen hänvisar till namnet Access 2007.

Introduktion
För inte så länge sedan släpptes nya Microsoft Office 2007 och i Enterprise paketet följer Access 2007 med. Om du är utvecklare inom PHP och vill använda en databas skapad i det programmet så kan du stöta på problem. Den här artikeln hoppas jag ska lösa era problem så ni slipper få ont i huvudet för att ni inte får det att fungera. Annars kan ni ju alltid använda MySQL som ju är gratis och så mycket smidigare att använda med PHP (sök på LAMP på Google om ni vill veta mer om det).

Formatet
Tidigare har Microsoft använt MDB som filtyp för sina Access databaser men i senaste versionen används ACCDB. Några förbättringar har gjorts och säkerheten har blivit bättre än tidigare.

Installera stöd för ACCDB
Om ni vill ha stöd för ACCDB på databasservern måste den ha Office 2007 installerat eller ett smidigt litet paket som går att ladda ner gratis från Microsofts hemsida. Det är inte så vanligt att en server har Office 2007 installerat så därför ska vi hämta paketet. Navigera till nerladdningssida för Access Database Engine och klicka på Download högre upp på sidan. En stor nackdel är att det ligger på ungefär 25MB så det kan vara besvärligt att lägga till det i ett komplett installationspaket för enklare distribution.

Installera paketet på någon av Windows versionerna som stöds (exv. Windows XP) och kontrollera sedan om allt fungerar genom att öppna "Data Sources (ODBC)" i administrationsverktyg på kontrollpanelen. På fliken "Drivers" letar ni upp "Microsoft Access Driver (*.mdb, *.accdb)". Hittar ni den kan ni starta om datorn för att försäkra er om att det har installerats korrekt i registret.

Testa anslutning till ACCDB med PHP
Nu kommer vi till testning av systemet. Jag har skrivit några enkla rader i PHP som ansluter till en simpel databas skapad i Access 2007.

Kod (simple_odbc.php):

<?php
/**
* Get all tables and return them in an array
*
* @param resource $conn
* @return array $tables
*/
function odbc_get_tables(&$conn)
{
$tables = array();
$result = odbc_tables($conn) or die('Kan inte hämta tabeller!');

// Hämta alla tabeller och lagra i vektorn $tables
while (odbc_fetch_row($result)) {
if(odbc_result($result,'TABLE_TYPE')=='TABLE') {
$tables[] = odbc_result($result,'TABLE_NAME');
}
}

return $tables;
}

define('DB_PATH', 'D:/wwwroot/project/xxx');
define('DB_NAME', 'projekt_xxx.accdb');
define('DB_PASSWORD', '');

$db_conn = odbc_connect(
'DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};
DBQ='. DB_PATH . DB_NAME,
'DODB.Connection',
DB_PASSWORD,
'SQL_CUR_USE_ODBC'
) or die('Kan inte ansluta till databasen!');

// Visa alla tabeller i databasen
$tabeller = odbc_get_tables($db_conn);
print_r($tabeller);

// Stäng anslutningen
odbc_close($db_conn);
?>


Inspiration till koden kommer från NinethSense där man ansluter till en vanlig MDB databas.

Slutord
Det var allt för den här gången. Hoppas ni får det att fungera utan problem.

Källor
http://www.phpbuilder.com/board/showthread.php?t=10316318
http://www.thescripts.com/forum/thread594515.html
http://blog.ninethsense.com/php/microsof-access-database-mdb-from-php/
http://aspn.activestate.com/ASPN/Cookbook/PHP/Recipe/123709
http://www.connectionstrings.com/?carrier=access2007 -- Mycket bra sida om ni har glömt hur man skapar en anslutning på någon typ av databas. Funkade dock inte för mig när jag försökte få ACCDB att fungera. Skriv gärna en kommentar till artikeln om ni får det att fungera med exemplen i källan.

Cisco: CCNA2 Lathund inför praktiskt prov

Jag har bestämt att dela med mig av en lathund skriven av mig själv som kan användas om man vill kunna de vanligaste kommandona för det praktiska provet i CCNA termin 2. Lathunden är inte komplett utan är bara grundläggande kommandon som kan eller borde förekomma på provet.

Lathund CCNA2
I lathunden används bara kommandon på en router och i routing protokollet RIPv1 används två påhittade nätverk. Alla IP-adresser är påhittade klass C. En annan router Lab_B refereras i lathunden men används bara som exempel med två interface. Alla lösenord som används är "class" och "cisco". Efter vissa kommandon skriver jag en förkortning inom parantes som kan användas istället för att göra det enklare att komma ihåg.


! Logga in
Router> enable (ena)

! Gå till prompt för globala ändringar
Router# configure terminal (conf t)

! Ändra routerns namn
Router(config)# hostname Lab_A (host ...)

! Lägg till Lab_B i hosttabellen
Lab_A(config)# ip host Lab_B 192.168.2.2 192.168.5.1

! Sätt krypterat lösenord med stark MD5 för privilege mode
Lab_A(config)# enable secret class (ena sec ...)

! Om routerns hårdvara inte klarar stark MD5 kan man
! använda följande som är okrypterat
Lab_A(config)# enable password cisco (ena pass)

! Kryptera alla okrypterade lösenord med en svag algoritm
Lab_A(config)# service password-encryption (serv pass)

! Sätt lösenord på konsol 0
Lab_A(config)# line console 0 (line con0)
Lab_A(config-line)# password cisco (pass ...)
Lab_A(config-line)# login
Lab_A(config-line)# exit

! Sätt lösenord på alla virtuella telnet anslutningar
Lab_A(config)# line vty 0 4
Lab_A(config-line)# password cisco (pass ...)
Lab_A(config-line)# login
Lab_A(config-line)# exit

! Hoppar över AUX

! Lab_A har ett FastEthernet 0/1 och en seriell 0/0 DCE länk
! Seriella har IP: 192.168.2.1 och subnätmask 255.255.255.0
! FastEthernet har IP: 192.168.1.1 och subnätmask 255.255.255.0

! Konfigurera FastEthernet interface
Lab_A(config)# interface fastethernet 0/1 (int fa0/1)
Lab_A(config-int)# ip address 192.168.1.1 255.255.255.0 (ip addr ...)
Lab_A(config-int)# no shutdown (no sh)
Lab_A(config-int)# exit

! Konfigurera Seriella interface
Lab_A(config)# interface serial 0/0 (int s0/0)
Lab_A(config-int)# ip address 192.168.2.1 255.255.255.0 (ip addr ...)
Lab_A(config-int)# description Connection to Lab_B, Bldg13 (desc ...)
Lab_A(config-int)# clock rate 56000
Lab_A(config-int)# no shutdown (no sh)
Lab_A(config-int)# exit

! Konfigurera RIP version 1
Lab_A(config)# router rip
Lab_A(config-router)# network 192.168.1.0 (net ...)
Lab_A(config-router)# network 192.168.2.0 (net ...)

! Konfigurera en loopback - finns inte alltid med på provet
Lab_A(config)# interface loopback 0 (int loop0)
Lab_A(config-int)# ip address 172.16.3.1 255.255.255.0 (ip addr ...)
Lab_A(config-int)# exit

! Gå tillbaks till början
Lab_A(config)# CTRL+Z

! Kontrollera routing tabellen och se efter om routern har
! fått några uppdateringar via RIP
Lab_A# show ip route

! Kontrollera den aktiva konfigurationen
Lab_A# show running-config (sh run)

! Kontrollera att interfacen är korrekta och uppe
! Om routern har ett interface BRI måste andra alternativet användas
Lab_A# show ip interfaces brief (sh ip int bri) eller (sh ip int brief)

! Spara aktiv konfiguration till NVRAM
Lab_A# copy running-config startup-config (copy run start)

! Sätt en Access Control List
! Tänker jag inte gå igenom men kan förekomma på provet.
! Glöm inte att först skapa den i (config)# och sedan sätta
! den på ett interface (config-int)# med respektive kommando;
! access-list, access-group.

! Starta om routern
Lab_A# reload

!
! Färdigt
!


En sak ni ska komma ihåg är att ni måste kunna koppla rätt kablar och koppla nätverket rätt. Annars är det ingen idé att försöka göra provet. Fick faktiskt höra av min Cisco instruktör att hon har varit med om elever som kommit till det praktiska provet och inte ens vet var de ska koppla konsolkabeln (RJ45-DB9, rollover). Ha ha, vet man inte det kan man inte konfigurera en router och då borde man inte gå Cisco kursen överhuvudtaget.

Cisco CCNA är enkel i början men går fort in på mer avancerade detaljer om nätverk och routing protokoll. Väljer man kursen vill man verkligen lära sig mer om nätverk eller bli en nätverkstekniker. Men det finns faktiskt många där ute som inte ens känner till vad Cisco är för något. Jag tycker inte synd om dem för man måste studera mycket om man ska klara kursen. Tro inte att det går att plugga mycket sista veckan eller veckorna. Cisco kräver djupare studier under längre tid för det är så mycket information hjärnan måste ta in.

Nu ska jag inte skriva om Cisco kursen och om elever som inte vill studera nätverk. Jag gissar att om ni kommer hit till denna artikeln så är ni troligtvis intresserade av Cisco eller så vill ni fuska och lära er alla kommandon inför det praktiska.

Lycka till!

PHP-Gtk2: Nytt Glade v3.3.4

Verktyget Glade som används vid utveckling av GTK-program i Linux och Windows har släppts i en ny version, speciellt för Windows.

Verktyget (även kallat Rapid Application Delevopment - RAD) är perfekt för utvecklare som vill se hur deras applikation kommer se ut när det är färdigt. Det är enkelt att skapa ett nytt program - man bara klickar på det man vill lägga till och sedan dra det på plats. Givetvis finns det regler för hur detta fungerar men det är oviktigt.

En viktigt egenskap är att Glade sparar designen av programmet i XML formatet. Det gör att samma design kan användas i olika anpassade programmeringsspråk. Ett exempel på det är PHP-Gtk2 som i dagens läge mestadels skrivs för hand, men även ibland i verktyget Glade. Det gör det mer effektivt att skapa program och man slipper tänka på designen när man kodar, något som är viktigt att separera när man programmerar i de flesta programmeringsspråken.

Det finns många exempel på Internet om hur man använder verktyget och jag kommer även skriva mer om hur man använder det i min framtida artikelserie om PHP-Gtk2. Serien har varit planerad väldigt länge men jag har ont om tid, samt att jag studerar på högskola nu. Istället sätter jag mig ner ibland om antecknar på papper om vad jag vill ta med i serien och hur man enklast kommer igång.

Vill du testa verktyget och kanske testa PHP-Gtk2 samtidigt. I så fall rekommenderar jag följande länkar:

http://canzoniere.ilbello.com/php-gtk/glade3-3.4.0-win32-1.zip -- De binära filerna
http://www.kksou.com/php-gtk2/articles/install-glade3-for-PHP-GTK2-on-windows.php -- Kom igång med Glade 3 på Windows. Ett måste om ni vill veta hur ni får den nya versionen 3.x.x att fungera.

Länge leve Glade 3 och dess efterföljare. Hoppas ni kommer tycka om Glade lika mycket som jag när jag först stötte på det.

03 oktober, 2007

Cisco: Egen Cisco router för labb hemma

Jag är student på högskolan i Halmstad och går programmet Nätverksdesign- och Datordrift 60 HP första året. I programmet ingår kursen Cisco som behandlar datorkommunikation från grunden till expertnivå.

I dagsläget läser jag CCNA 2 och har fått höra att det kommer bli mycket praktiskt framöver i kursen, plus att tentan är ett praktiskt prov. Nu är det så att jag inte har labbsalarna på skolan lättillgänglia eftersom jag bor hemma (fanns inga lägenheter kvar) så jag tänkte att jag kanske skulle skaffa egen labbutrustning som jag kan öva på hemma när jag är ledig från skolan.

Jag frågade lärarna om de kände till någon hemsida eller företag som sålde begangnade nätverksenheter, i detta fallet Cisco routrar av typen 16xx, 25xx, 26xx, som är ungefär likadana som de vi använder på skolan. De kände till att det fanns några som kunde erbjuda detta men kom inte ihåg vem eller vilka. De sade att jag fick kolla upp det när jag kom hem. En sökning på Google på ett relevant ämne gjorde att en Google AdWord annons visades som ledde till en sida som sålde just begangnade nätverksenheter och tillbehör. Precis vad jag hade letat efter.

Så om du är ute efter en Cisco router eller switch av något slag att ha som labbutrustning utöver utrustningen i skolan, eller om du frågar runt på forum och auktionssajter om att du vill köpa en router, kan jag rekommera hemsidan http://www.stril.com/ som ägs av företaget Stril Networks. Företaget är både svenskt och engelskt så kommunikationen med deras support eller vanliga frågor via epost eller telefon ska nog inte vara några problem.

Om du vill söka på labbutrustning kan du använda menyn till vänster och gå till kategorin Product Pages. Gå vidare via länken Lab / Education för att komma till avdelningen för olika sorters nätverkspaket (labb-kit för exempelvis studenter). För närvarande har de Cisco 2501 och Cisco 2503 och switchar som verkar ganska hyffsat. Det finns även Cisco 1005 men den verkar inte så användbar för just detta ändamålet; kanske för just dig, men inte för mig.

Jag mejlade dem och frågade om priset för Cisco 2501 paketet som innehåller tre av varje. Fick höra att priset låg på ungefär 3700kr. Jag behöver bara minst två av varje så fick ett pris på ungefär 2500kr. Helt okej pris för mig eftersom jag har tjänat ihop lite extra pengar under det senaste året.

Så om du vill köpa begangnad nätverksutrustning rekommenderar jag er till Stril Networks.

Att tänka på
Det finns program på Internet som kan simulera en Cisco router eller switch. De flesta tillåter även design av nätverket.

25 september, 2007

Error: PAGE_FAULT_IN_NONPAGED_AREA

Article in English
Link to Swedish/svenska article

Preface
This is an article about what can be wrong and how I solved a blue screen error, also known as Blue Screen of Death, in Windows XP with the error message PAGE_FAULT_IN_NONPAGED_AREA - 0x00000050.

A tip from the writer
I've noticed that there are many people with this type of problem that come to my article through different search engines. My first words to you are that it's 99% chance that there's an hardware error when you encounter this type of error message. So try disconnecting your hardware, like RAM-memory, networkcard and nonintegrated soundcard. Also try to unplug external USB devices, like external harddrives, wireless mouse and keyboard, printers etc. Leave atleast one RAM-memory module that you know works. If you don't know which of them to use (if you use more than one) you'll have to try one of them. If that one doesn't work, use another one instead. Try leaving the graphics card mounted on the motherboard and use an old style mouse and keyboard with PS/2 connectors. You'll need to use the old style if you unplug your wireless mouse and keyboard, but you don't need to change input devices if you don't want to. Maybe you can borrow these from a friend if you don't have any. Feel free to keep on reading the article to see how I solved the problem.

Introduction
All started with my mom sending an SMS to me when I was on a military excercise in Arvidsjaur, in the cold northern parts of Sweden. It said that my computer at home had crashed and that it restarted itself over and over again. I didn't get the message until I'd recharged my mobilephone battery at home, half a week after she sent the message. My first thought was that mom had crashed the computer again as usual. It's her and her strange magnetic field or the computer doesn't like her very much. I personally think it's the last part :).

I only noticed a new incoming SMS on my mobile but I didn't open it. I went to the kitchen to make some dinner and when I started the computer I didn't notice anything strange. Remember I didn't read the message my mom sent me. After a while it appeared to me that something was wrong. I got popup messages in Windows XP saying the registry couldn't be read, that some files were corrupted and some files that couldn't be found. I waited a few seconds and then the computer locked itself and didn't respond to my actions. After another few seconds I got the feared Blue Screen of Death (BSOD). The only important information I retreived was the type of error PAGE_FAULT_IN_NONPAGED_AREA, 0x00000050 (some hexadecimal error codes) and that it could be a hardware fault.

Possible problems and research
My first thought was that it could be a harddrive error because some files had gone corrupted and missing. So I ran a few diagnostics tests to check the health of the disks and partitions (S.M.A.R.T, read, write etc). While I did this I searched the Internet for information with Google on my Acer laptop about the error message and error codes. I found information related to RAM-memory and graphics, so now I had somehing to work on. I ran DXDIAG that comes with a DirectX installation, and a bootable version of Windows DIAG. I checked the memory read- and write speed, the graphics read- and write speed, and if the drivers were installed correctly. When my harddrive and graphics tests were complete it said that all tests went ok, but the memory test reported a difference in read- and write calculations. This narrowed it down to the RAM-memory modules.

I shutdown the computer and opened it. I then located my RAM-memory and then replaced both of my 512MB modules with a 256Mb module I'd borrowed from a friend of mine (the neighbor downstairs). It worked perfectly and I tested the system for about one hour with heavy memory benchmarks. All went ok, luckily, so I switched back to one of my 512MB modules. That didn't work out so good because I received the same error message as before when started my computer. I did the process all over again and switched to my other module. I started the computer and came to the Windows XP logon screen. Yes, fantastic! I found the problem, hopefully. Now, the only thing I had left was to backup all my data and format my harddrives.

Data backup and formatting
Later the next day I had made backups of all my data on both harddrives (music, movies, games and important documents), most important my music. Then I formatted the harddrives - Everything gone with the wind, including Windows XP. Now, all that were left was to install Windows XP and all applications. The installation went through without a single problem and no blue screens popups.

Do you want to know what my problem was?

Error explanation
The problem was that the memory circuits of my oldest RAM-memory module had gone old - six years of heavy calculations and gaming. It couldn't allocate/reserve memory for applications and services as good as my newer RAM-memory module. It had performed well until now. I accept that it was the old module and not the new one I bought two years ago.

Solution
The problem is now solved. I've ordered a new RAM-memory module that matched circuits, type and cache, from an online shop, my favorite www.datorbutiken.com. I put it into an open RAM-memory module slot, started my computer, and it worked like a charm.

Conclusion
I didn't have to backup all my data on my harddrives but I thought i would be good anyway. PAGE_FAULT_IN_NONPAGED_AREA was for me a hardware fault - the RAM-memory. It could be different for you, but it sounds, when reading the error message, that i could be something with the Windows pagefile or "växlingsfilen" in swedish - the virtual memory. Non-paged area is the RAM-memory, in theory, because the operating system (OS) stores information in the pagefile when there's no space left in the RAM-memory. Note: sometimes I got the message IRQL_NOT_LESS_OR_EQUAL, 0x0000000A.


Here's a quote from Microsoft:
"This Stop message occurs when requested data is not found in memory. The system generates a fault, which normally indicates that the system looks for data in the paging file." ... ... "Faulty hardware, a buggy system service, antivirus software, and a corrupted NTFS volume can all generate this type of error." ~ Microsoft

To do when you have an error or problem
Go and get a computer with connection to the Internet and search for information with Google after your error message or problem. Read discussions and forums to maybe find your solution. This will save you hours of frustration, if you can find anything of course.

Good luck!

24 september, 2007

Suprnova.org lever igen

"Suprnova.org - The Universal Bittorrent Source" står det när man kommer till den nya återuppstådda torrentsidan Suprnova. Det är ett projekt som ägarna till ThePirateBay.org har startat. Suprnova var den största torrent trackern runt år 2000 men blev snart nedstängd av filmbolag och upphovsrätten med flera eftersom man kunde ladda ner olagliga upplagda filmer, låtar, album, böcker och mycket mer. Ni som trodde Suprnova var utdöd hade fel. Den har fortfarande levt kvar i minnen och visioner. Nu har visionen blivit sann.

I mitten av Augusti i år öppnades portarna för den nya trackern Suprnova.org. Och den har expanderat fort med insamlande av länkar till torrents och information. Dagens statistik lyder:
| 1.123.071 torrents on 27.909 trackers
| 7.747.181 seeders, 4.302.193.837 leechers
Det är de två största som blir ett.

Källor
suprnova.org
thepiratebay.org
piratbyran.org
google.com

21 september, 2007

Bredbandshastigheter och termer till grunden

Tips! Jag har skrivit en ny artikel som beskriver hastigheter och tid lite bättre vid nedladdning. Där skriver jag om mitt aktuella bredband men det går även att applicera på andra hastigheter. Länken är Jag har 30/10 Mbit bredband

Förord
Undrar du vilken hastighet du kan få maximalt på ditt bredband i teorin? Vill du veta mer om de termer som används? Det är mycket man måste tänka på innan man beställer bredband om man inte vill betala för mycket. Men bryr man sig inte och bara vill ha det snabbaste får ni gärna läsa i alla fall. En fråga många av er kanske undrar är hur fort kan jag ladda ner en film med mitt bredband? Detta är det jag kommer gå igenom den här gången.

Tänk på att denna artikeln kanske inte direkt innehåller allt just Du behöver veta men det är en början. Om ni vill att jag ska skriva lite bättre om detta ämne så kan ni skriva en kommentar och berätta vad ni tycker.

Introduktion
Bredband, Internet, hastigheter, Mbps, kbps, ADSL, ISDN och modem, webb-tv, webb-radio, webb-applikationer och mycket mer. Detta är några av de termer som används i olika sammanhang när man surfar på Internet. Vissa av dem har man kanske hört talas om och några av dem finns i de avtal med Internetleverantörer som folk har gått med på. I den här artikeln tänker jag förklara det som är oklart för många och för andra inte. Häng med!

Termer
  • Bredband: En fast uppkoppling till Internet som skiljer mot de temporära modemuppkopplingar man gjorde förr i tiden. Man kan beställa bredband från sin Internetleverantör i olika hastigheter, men enligt mig tycker jag det bara får kallas bredband om man har 2Mbit eller mer i hastighet. Mer om detta senare.

  • Internet (fast/trådlöst): Ett publikt nät som används för att koppla samman kontinenter för kommunikation, information och olika tjänster. För något år sedan behövdes en Internetleverantör för att man skulle få tillgång till Internet. I dagens läge finns det platser utspridda över hela världen där man kan surfa trådlöst; exempelvis på flyplatser, caféer, restauranger, städer med flera. Då används uppkoppling som ägaren till exempelvis caféet betalar.

  • Hastighet: När man talar om nätverk, kommunikation och uppkoppling mot Internet, som är delar inom IT, pratar man om olika hastigheter. Det är alltså hur fort man vill att det ska gå att exempelvis ladda filmer på Youtube, ladda ner laglig musik/film/program, eller surfa till hemsidor. Det finns fortfarande folk i Sverige som använder modem och då talar man om hastigheter i kilobits per secund (kbps). De som använder bredband av något slag, oftast privatpersoner och småföretagare, brukar tala om hastigheter i megabits per sekund, eller gigabits per sekund för skolor och medelstora till stora företag.
    • Teknisk information: Den tekniska biten kommer nu för de som vill veta lite mer djupgående om detta ämne. I datorn finns tecken (!"#¤%&/()=?`0123456789abcKAZ med flera).

    • Ett tecken består av 8 digitala ettor och nollor. En etta eller nolla är 1st bit. Alltså består ett tecken av 8 bitar, vilket också är 1 Byte (uttalas "bajt") inom IT. Dessa bitar skapar ett binärt tal som kan omvandlas till decimalt, vilket är det talsystem vi människor använder).

    • Termerna bps, kbps, Mbps, Gbps är antalet bitar som skickas upp/ner via den uppkoppling man använder.
      Enheter:
      • bps: bits per sekund
      • kbps: kilo (1000) bits per sekund
      • Mbps: Mega (10^6) bits per sekund
      • Gbps: Giga (10^9) bits per sekund

    • Om man vill räkna ut hur många Mega Byte (MB) man har nedströms på sin uppkoppling måste man ta sin omvandla sin hastighet till kbps och sedan dividera med 8, eftersom 8 bitar är 1 Byte som är ett tecken.

    • Hastigheten 0.25Mbit som är 250kbps (1.0Mbit = 1000kbit), ger 31.5 kilo Byte per sekund (kB/s eller kBps) (genom uträkningen 250/8=31,5). Mer om detta finner ni på länken Jag har 30/10 Mbit bredband som även går igenom lite uträkningar.

    • Om man laddar ner i en konstant hastighet av 31.5kB/s har man laddat ner en DivX/Xvid film (ca 700MB) på ungefär 6 timmar. Har man 8Mbps tar det ungefär 12 minuter. Med 24Mbps tar det ungefär 4 minuter.

    Räknar ni med dessa faktorer när ni skaffar er bredband så vet ni ungefär vilken hastiget som krävs för ert behov. Försök räkna ut hur mycket ni använder eller kommer att behöva Internet per dag (x antal MB) inklusive nerladdning, uppladdning, chat och surfning. Räkna sedan ut ett snitt per månad och beställ ert bredband därefter. Observera dock att detta är teoretiskt. I praktiken skiljer sig alltid något och det är fler faktorer som spelar roll (trafik på nätverket, kollisioner, SYN/ACK:s med mera).

  • ADSL: Står för Asynchronous Digital Subscriber Line och är ett annat ord för bredband kan man säga. ADSL kör på frekvenser som skiljer sig mot tal på ledningar så därför brukar man kunna överföra telefon- och fax samtal på ledningen samtidigt som man använder bredbandet.

  • Modem: Används för att skapa temporära anslutningar mot exempelvis en server eller det publika nätet Internet. Denna varianten brukar kosta pengar per minut man är ansluten. Användes mycket på 90-talet och har börjat försvinna helt. Det finns fortfarande folk som använder detta runt om i världen, även i Sverige.

  • Webb-TV: Möjlighet att titta på TV-sändningar direkt på Internet. Det finns även tjänster på Internet som ger användare möjlighet att titta på filmklipp som andra användare har lagt upp. Exempel på detta hittar ni på aftonbladet.se och youtube.com

  • Webb-radio: Möjlighet att lyssna på radio via Internet. Vem som helst får sända radio på Internet. Se till exempel Digitally Imported radio di.fm, sr.se eller radiocity.se.

  • Webb-applikation: En applikation som typ Microsoft Word, Open Office, Anteckningar, Paint, Utforskaren, Outlook, Thunderbird men den befinner sig på Internet, alltså på en hemsida. Det finns något vid namn Web 2.0 (AJAX,DOM) som har kommit mer och mer på Internet och det är teknik som ger utvecklare många verktyg och funktioner för att skapa enkla men avancerade webbapplikationer. Några webbapplikationer är så "tunga" att det tar jättelång tid att använda med modem. Detta beror på dolda anslutningar, många bilder, text och kod som körs i webbläsaren och som då också måste laddas ner av modemet. Några exempel är Gmail, prisjakt.se.

  • Server: En dator som man kan komma åt via Internet eller via nätverket på det interna nätet. Det är mjukvaran i datorn som gör att vi kan komma åt den. Det kan röra sig om en mejl server eller webb server. Det finns mjukvara ni kan ladda ner till er egna dator. Sök bara på Apache eller IIS på Google.

  • Klient: En dator som ansluter till en server via mjukvara.

  • IP-adress: En unik adress som datorer, servrar (annan typ av dator) och annan hårdvara måste ha för att få kommunicera med andra datorer eller hårdvara. Ett bra exempel på detta är Internet. Om du surfar till en hemsida, typ www.google.se, så ansluter du egentligen mot en server med ett unikt IP-nummer. Google har exempelvis IP-adressen 64.233.183.103. Testa skriv in den i adressfältet i till exempel Firefox/Opera/Internet Explorer/Mozilla.

  • Router: Används ofta på nätverk för att dirigera om trafik logiskt, alltså på IP-nummer nivå. Måste användas på ett hemma- eller företags nätverk för att nå Internet med flera datorer, som då får dela på en gemensam adress.

  • Cookies (kakor): En kaka är en fil med information som sparas ner på er dator. Den används sedan av hemsidor för att spara information om ert surfande, komma ihåg vilka sidor ni besökt, om ni alltid vill vara inloggade på en hemsida även nästa gång ni besöker den med mera. Det finns också så kallade "Tracking Cookies" som försökter kartlägga ert surfande för att sedan använda denna informationen inom marknadsföring mot er eller andra parter.

  • ADSL modem: Ett slags modem som måste användas för de flesta Internetleverantörer, typ Telenor, Telia, för att få tillgång till Internet. I stadsnät brukar man hoppa över detta och koppla in sig direkt in i väggen istället - typ Comhem.

  • Trådlöst (wireless): Teknik för att kommunicera trådlöst med Access Punkter (AP) som sedan ger tillgång till nätverk eller Internet. Det kan också vara blåtand (bluetooth), IR eller liknande.

  • Använd också Wikipedia och Google om det är en term ni undrar över.

Det finns så mycket mer att berätta om. Till exempel mer ingående hur en anslutning mot exempelvis Google går till? Hur man kopplar ett eget nätverk? Med mera med mera. Detta är sånt jag kommer gå igenom i framtida artiklar, men på obestämd tid.

Hoppas ni hade en trevlig läsning och att ni nu har mer kunskaper för att förbereda er inför ett bredbandsköp.

20 september, 2007

Vista: Installation blåskärm

Förord
Får du en blåskärm (även känt som blue screen of death) när du försöker installera Windows Vista? Läs då vidare för att se om det är en möjlig lösning på just ditt problem.

Introduktion
När jag försökte installera Windows Vista igår gick allt jättebra ända tills punkten "Installation av uppdateringar" var klar och datorn hade startats om. Jag satt och åt och trodde att installationen skötte sig själv så jag tog det lugnt. Men när jag kommer till datorn igen ser jag bara en svart skärm med en blinkande markör. Jag startade om datorn med CTRL+ALT+DEL, väntade på att Vista installationen skulle fortsätta, men möttes av en blåskärm.

Blåskärm // Blue Screen of Death
Jag hade fått något som jag inte trodde var möjligt i nya Windows versionen Vista - en blåskärm. Och under installationen dessutom.

| Felmeddelandet jag möttes av var endast en felkod: 0x0000007E.

Felsökning
Min erfarenhet från tidigare och från diverse diskussionsforum sade mig att det kunde bero på hårdvara. Oh shit! tänkte jag. Hoppades nu bara inte att något i datorn hade gått sönder. Den var ju helt ny. Men så kom jag på att jag precis hade uppgraderat RAM-minnet från 2048MB till 4096MB. Detta var min enda förklaring eftersom Vista hade fungerat förut innan jag fick byta ut min defekta hårddisk. Och det var också innan jag uppgraderat RAM-minnet. Då var det bara att hitta en lösning på problemet då.

Försöka hitta en lösning
Jag lyckades åtgärda felet och här kommer en steg-för-steg guide exakt hur jag gjorde.
  1. Starta om datorn när du ser blåskärmen
  2. Gå in i BIOS. Observera att det finns olika tangenter man måste trycka på för att aktivera BIOS. Det beror på tillverkaren av moderkortet vilket BIOS de lagt in.
  3. På mitt ASUS moderkort måste man trycka DEL för att komma in i BIOS.
  4. Sätt BIOS till standard inställningar (eng. default settings)
  5. Stäng BIOS och spara inställningarna
    • Observera: jag ändrar mitt BIOS till standard inställningar från tillverkningen i fabriken för att återställa eventuella ändringar och överklockningar som kan bidra till blåskärmar.
  6. Stäng av datorn
  7. Dra ur elkabeln och öppna datorlådan.
  8. Jorda dig och skydda mot elektrostatisk urladdning (ESD).
  9. Lokalisera RAM-minnet
  10. Plocka bort x antal minnesmoduler för att minska på minnet. Helst under 2048MB.
  11. Stäng datorlådan igen.
  12. Dra ur eventuella externa enheter så som externa hårddiskar, skrivare, USB-minnen med flera.
  13. Sätt i elkabeln igen och starta datorn
  14. Sätt i installationsskivan för Windows Vista (eng. Vista Boot CD/DVD)
  15. Nu borde installationen fortsätta där den avbröts förut - efter installation av uppdateringar och innan slutföra installation.
Efter dessa punkter startade Windows Vista som det skulle och jag kunde fortsätta med installation av drivrutiner med mera.

Slutsats
Får ni ett felmeddelande från till exempel en blåskärm, sök då upp en annan dator med Internetuppkoppling och sök på Google. Ni kan också fråga någon som är datorkunnig och hoppas på att han eller hon kan ge er ett svar eller "... jag orkar inte!".

"Google is your only friend in search for information" ~ Waschman

Tack för mig

19 september, 2007

Cisco: CCNA 1 Final Exam

Förord
Jag går Nätverksdesign och Datordrift på högskolan i Halmstad och läser därmed Cisco kursen inom CCNA och CCNP.

Introduktion
Idag hade vi Final Exam på CCNA 1 som bestod av 49 frågor. Jag tyckte det gick jättebra och jag lyckades för en gång skull med subnettingen, men svarade fel på någon enstaka fråga. CCNA 1 består av 11 moduler om grundläggande kunskaper inom nätverk och det ingår labbar och quiz till varje kapitel. Materialet är av mycket hög kvalitet och det gör det så väldigt mycket enklare att studera och lära sig materialet, samt fördjupa sina kunskaper inom områden man kanske inte var så bra på innan kursen.

Resultat
Mitt resultat i procent för 49 frågor: 94%

Diskussion
Jag är mycket nöjd med mitt resultat men borde egentligen ha fått 100% eftersom det inte är så svåra saker. Det var två slarvfel som gjorde att jag missade maxpoängen. Jag kommer satsa ännu mer på kursen nästa period. Då kommer vi även ha ett praktiskt prov som jag ivrigt vill testa. Mina kunskaper har förbättrats sedan jag gick programmet CCNA på gymnasiet.

Källor
  • Läs mer på www.cisco.com eller hos din närmaste Cisco akademi med certifierade Cisco instruktörer.

03 september, 2007

MX 3200 Keyboard - Inaktivera "Dynamic Search & Zoom"

Tja! Har ni ett tangentbord "MX 3200 Keyboard" från Logitech? Tycker ni att den dynamiska sök- och zoom funktionen är i vägen när ni spelar spel eller arbetar? Allt detta stämmer precis in på mig själv och den funktionen är riktigt jobbig, speciellt när man spelar spel. Har försökt avaktivera via SetPoint programmet men går inte. Här får ni lösningen på problemet:

Avaktivera "Dynamic Search & Zoom"
Håll inne tangenten Fn och tryck på "Close app" (knappen till vänster om Caps Lock med ett X)
Fn+Close app

Aktivera "Dynamic Search & Zoom"
Håll inne tangenten Fn och tryck på knappen nedan för "Close app"-knappen som ni hittar om ni följer instruktionen för hur man inaktiverar funktionen.
Fn+App/Doc switcher

Att notera
Detta kanske står i manualen men jag har aldrig tänkt på att läsa den. Man tycker ju att funktionaliteten borde kunna [in]aktiveras via Logitechs SetPoint program för Mus och Tangentbord. Uttrycket RTFM (Read The Fine/Fucking Manual) passar väl in här, eller?!

02 september, 2007

Jag äntligen 20 år

Ett stort grattis till mig själv i efterskott!!!
Jag fyllde 20 år den 30 augusti i torsdags och firade min födelsedag med tårta och god tre-rätters middag. Nu kommer mina polare som ännu inte fyllt 20 utnyttja mig till fullo - Systembolaget!

~ Tack o hej!

Välkomna till bloggen

Välkomna ska ni vara kära besökare. Jag skriver om IT för att det är kul och för att jag vill dela med mig av information och kunskap. Jag försöker hålla bloggen så kategoriserad som möjligt för att ni enklare ska hitta intressanta länkar och artiklar.