SYSTEM FÖR LAGRING AV E-POST

Storlek: px
Starta visningen från sidan:

Download "SYSTEM FÖR LAGRING AV E-POST"

Transkript

1 Examensarbete 10 poäng C-nivå SYSTEM FÖR LAGRING AV E-POST Reg.kod: Oru-Te-EXD083-D103/07 Magnus Bilock Dataingenjörsprogrammet 120 p Örebro vårterminen 2007 Examinator: Thomas Padron-McCarthy MAIL STORAGE SYSTEM Örebro universitet Institutionen för teknik Örebro Örebro University Department of Technology SE Örebro, Sweden

2 Sammanfattning Detta är en rapport över utveckling av Mail Storage System (MSS) som utvecklades hos Proplate IT i Örebro. Målet med MSS var ett system som ska kunna kopiera och lagra e-post som skickas från och till en Microsoft Exchange-server. Vilka e-brev som ska sparas bestäms genom att avsändarens och mottagarnas e-postadresser matchas mot en lista med e-postadresser. Systemet konstruerades med prestanda i åtanke, eftersom systemet annars kan påverka hela e-postservern negativt. Resultatet blev ett fullt fungerande system som använder SMTP-händelser för att notifieras när ett nytt e- postmeddelande skickas från eller till Exchange-servern. Tester av prestanda hos MSS visade att systemet fungerar tillfredsställande för servrar med få/medelstort antal e-postkonton. För servrar med ett väldigt stort antal e-postkonton bör MSS inte användas, då det skulle kunna fördröja levererandet av e-brev. Abstract This report is a documentation of the developing of Mail Storage System (MSS), which was made at Proplate IT in Örebro. The goal of developing MSS was a system to copy and store s sent to and from a Microsoft Exchange server. Which s to store is decided by comparing the sender and receivers addresses against a list of addresses. MSS was designed with performance in mind, because a slow performing system can affect the whole server in a negative way. The resulting system is a fully functioning system which uses SMTP events to be notified when a new arrives to the server or when a new is being sent from the server. Performance tests of MSS showed that the system works satisfying on servers with a few/medium number of users. Servers with a large number of accounts should not apply MSS, since it could delay the delivering of s. 1

3 Förord Jag vill speciellt tacka Mikael Bilock på Proplate IT för idén till projektet, Mattias Olgerfelt på Proplate IT för handledning hos Proplate och bollande av idéer, övriga medarbetare på andra våningen i NetCity för trevligt sällskap och gott fredagsfika, samt Jack Pencz för handledning från Örebro universitet. Örebro den 26 augusti 2007 Magnus Bilock 2

4 Innehållsförteckning 1 TERMINOLOGI INLEDNING BAKGRUND VARFÖR BEHÖVS MSS? MÅLSÄTTNING VAD SÄGER LAGEN? TEKNIKER OCH VERKTYG MICROSOFT EXCHANGE UTVECKLINGSMILJÖ PROGRAMMERINGSSPRÅK TELNET OCH SMTP GENOMFÖRANDE INSTALLATION Proplates nätverksstruktur FÖRUNDERSÖKNING CDO WebDAV.Net for Exchange Publika mappar i Exchange Exchange databashändelser SMTP händelsehanterare Windowstjänst Webbtjänst Slutsats av förundersökningen UTVECKLING AV MSS MSS SMTP-händelsehanterare MSS windowstjänst MSS Databas MSS Webbtjänst Körexempel SLUTSATS OCH DISKUSSION REFERENSER

5 1 TERMINOLOGI E-brev och e-post Det råder en viss förvirring om vad man på svenska ska kalla korrespondens genom brev över Internet. Vanligast är e-brev, e-post, mejl eller mail. I detta dokument kommer jag följa Svenska datatermgruppens rekommendation och använda e-post för tekniken, och e-brev för själva meddelandet. [1] API Ett Application Progamming Interface (API) är ett källkodsgränssnitt som leverantören av ett system kan tillhandahålla för att förenkla utveckling av system mot leverantörens produkt. Består oftast av ett antal kodbibliotek med färdiga anropningsbara metoder. SMTP Simple Mail Transfer Protocol (SMTP) är det vanligaste kommunikationsprotokollet för att skicka e- post. SDK Ett Software Developing Kit (SDK) är vanligtvis en samling utvecklingsverktyg och användarinstruktioner för att förenkla utveckling mot ett visst system. Det kan vara allt från några anropningsbara metoder till avancerad hårdvara som används för att kommunicera med ett system. Commit (I samband med databaser) Commit är ett svåröversatt ord som inom databasteknik används för att tala om att en databastransaktion har utförts eller godkänts. Det är endast efter commit som man kan vara helt säker på att en transaktion verkligen har skett. Wrapper Ett annat svåröversatt ord är wrapper, som bland annat inom datateknik används för att beskriva ett gränssnitt runt en metod som inte är kompatibelt med det programmeringsspråk som används. Genom att skriva en wrapper runt den metoden, kan man få den att fungera i ett annat språk än den ursprungligen utvecklades för. Array Array kan översättas till svenskans samling, men brukar i programmeringssammanhang aldrig översättas. En array är en datastruktur som samlar data av samma datatyp under ett gemensamt namn. De olika elementen går sedan att komma åt genom indexering. SQL SQL står för Structured Query Language och är det vanligaste språket som används för att kommunicera med relationsdatabaser. 1

6 2 Inledning Detta dokument beskriver arbetet och resultaten från utvecklingen av e-postlagringstjänsten Mail Storage System, hädanefter benämnt MSS, som utvecklades hos Proplate IT i Örebro. 2.1 Bakgrund Användandet av e-post som korrespondens har ökat lavinartat sedan Internet började slå igenom ordentligt i hem och företag på 90-talet. Hos företag som levererar en produkt eller tjänst, sker ofta en stor del av korrespondensen mellan kund och leverantör genom e-post. Uppdragsbeskrivningar, leveransbeställningar och förfrågningar om förändringar av utvecklingsarbete är exempel på korrespondens som ofta sker med hjälp av e-post mellan kund och leverantör. 2.2 Varför behövs MSS? Vad händer om en person med ansvar för ett eller flera projekt slutar hos ett av företagen i kedjan? Förmodligen kommer en ny person att tillsättas, vilket kan leda till att det går åt flera veckors arbete för den nya personen att sätta sig in i vad kunden har önskat och vad som har gjorts hittills. Samtal kommer att upptas mellan parterna, och kunden kommer säkerligen hänvisa till tidigare e-brev. Viktiga e-brev har en förmåga att försvinna i den stora mängd av e-post som kommer in varje dag, och det är lätt att radera ett e-brev som kanske inte verkar viktigt att spara i det skedet. Därför skulle det såklart underlätta för ett företag om alla viktiga e-brev som har kommit in och gått ut till kunden kan lagras på en extern plats utanför den server som tar emot och skickar e-post. Det är här som MSS kommer in i bilden. 2

7 2.3 Målsättning Målet med MSS som produkt är att utveckla ett system som ska kunna lagra e-brev som har skickats mellan kund och leverantör. MSS ska fungera som en agent som avlyssnar trafik in och ut ur en e- postserver. Se figur 2.1. För att kunna skilja på vilka e-brev som har gått ut till en kund eller leverantör och de som har skickats privat, jämförs avsändare och mottagare mot en lista med e-postadresser. Om avsändaren eller någon av mottagarna finns med i listan, så lagras e-brevet i sin helhet i en databas. Även så kallade attachments, d.v.s. medskickade filer, och e-post till fler än en mottagare ska kunna lagras. MSS ska kunna användas som ett fristående system, men även tillsammans med t.ex. ett större affärssystem där kontaktpersoner redan finns lagrade. Målgruppen för MSS är små/medelstora företag där en stor del av korrespondenser med kunder eller leverantörer sker genom e-post, och där det är viktigt att korrespondensen kan lagras för framtida bruk. Målen med MSS ur utvecklingssynpunkt är att utveckla ett system där de olika komponenterna är löst kopplade till varandra. Det ska vara så enkelt som möjligt att byta databas, byta lagringsserver eller att utveckla ytterligare en komponent till MSS. Det ska dessutom vara så bekvämt som möjligt att vidareutveckla MSS för att fungera mot någon annan e-postserver eller flera olika e-postservrar. Figur 2.1 Konceptskiss för MSS. MSS avlyssnar trafiken mellan Internet och servern. 3

8 2.4 Vad säger lagen? Vad säger lagen om att kopiera e-brev som kommer till en e-postserver och lagra dem på annan plats? För att reda ut det hela så kontaktade jag Datainspektionen, beskrev tanken med MSS och bad om vägledning. Jag fick då följande svar från Datainspektionens jurist Jens Västberg: Ett e-postmeddelande är en personuppgift enligt definitionen i personuppgiftslagen (3 PuL) varför denna lag är tillämplig på behandling av e-postmeddelanden (5 1 st. PuL) Som huvudregel skall den personuppgiftsansvarige alltid självmant lämna information till den registrerade om behandlingen av uppgifterna (23 24 PuL). Han avslutar med ett personligt utlåtande: Det förefaller mycket tveksamt om denna behandling är tillåten utan de registrerades samtycke. Att genomföra behandlingen utan de registrerades vetskap är inte tillåtet. Lagen säger med andra ord att det inte är okej att lagra e-post externt om inte avsändaren och mottagaren har vetskap eller eventuellt gett sitt samtycke till att så ska ske. Detta är relativt enkelt att uppnå med MSS, eftersom de berörda e-postadresserna måste finnas lagrade, och det är då lätt att automatiskt skicka ett e-brev till de e-postadresser som ska läggas till i listan, och be om samtycke. 4

9 3 Tekniker och verktyg Eftersom Proplate IT arbetar nästan uteslutande i Windows och.net-miljö, så kom jag tillsammans med min handledare överens om att MSS skulle utvecklas i C#. Som testserver installerades en Windows Server 2003 med Microsoft Exchange 2003 som e-postserver. Eftersom servern installerades lokalt, enligt beskrivningen i avsnitt 4.1, så användes TELNET för att simulera att e-post kom utifrån. 3.1 Microsoft Exchange 2003 Microsoft Exchange 2003 är en plattform för samverkan mellan olika tekniker för att förenkla kommunikation mellan människor. Det är ett serverprogram, och används främst som e-postserver. Det finns även funktioner som kalender, kontakthantering och inbyggd webbåtkomst. Eftersom Exchange är ett serverprogram, så krävs det någon form av klient för att kommunicera med Exchange. Den vanligaste klienten i Windowsmiljö är Microsoft Outlook, som är speciellt konstruerad för att utnyttja alla funktioner i Exchange. Exchange 2003 har även inbyggd webbåtkomst, så det går att komma åt sitt e-postkonto genom att använda en vanlig webbläsare. All data som sparas på Exchangeservern lagras i en databas som programmet är uppbyggt kring. Microsoft Exchange används främst av företag som byggt sin arkitektur kring Microsofts produkter, eftersom alla versioner av Exchange från och med Exchange 2000 är konstruerade för att använda Windows Server Active Directory som katalogstruktur och användarkontroller. Det i sin tur innebär att Windows 2000 eller nyare måste användas som grund, eftersom det var där som Active Directory först implementerades. Ett Active Directory kan kort beskrivas som en katalogtjänst som används för att lagra information om nätverksresurser över en domän. [2] En användare i en domän får sitt användarnamn, rättigheter och eventuellt e-postadress tilldelad av en administratör, och på så sätt kan man kontrollera vilka resurser som är åtkomliga av en viss användargrupp. Exchange är även starkt integrerat mot Microsoft Internet Information Service (IIS), eftersom Exchange använder de virtuella servrarna som IIS tillhandahåller för att kommunicera med andra servrar. Microsoft Exchange släpptes som beta för första gången 1995 och har sedan dess kommit ut i flera olika förbättrade versioner. En milstolpe i utvecklingen var Exchange 5.5 som var den första versionen att stödja Internetsupport, tidigare versioner fungerar endast i interna nätverk. [3] 3.2 Utvecklingsmiljö Som utvecklingsmiljö användes Microsoft Visual Studio Visual Studio 2005 är Microsofts stora utvecklingsmiljö som har stöd för flera olika språk och tekniker. Det går bland annat att utveckla fönsterapplikationer, windowstjänster, webbsidor och webbtjänster med hjälp av Visual Studio. Visual Studio 2005 stöder flera olika programmeringsspråk, som alla kompileras till samma maskinkod. Några av de språk som Visual Studio 2005 stödjer är C, C++, C#, Visual Basic och Visual Basic.NET. För att kunna köra ett program utvecklat i Visual Studio 2005 med de senaste kodbiblioteken, krävs att måldatorn har.net framework 2.0 installerat. Databasen konstruerades och administrerades i Microsoft SQL Server 2005, som är Microsofts stora relationsdatabashanterare. Den använder en variant av SQL-92-standarden, med namnet Transact- SQL, som innehåller en del förbättrade funktioner för bland annat utveckling av lagrade procedurer. 5

10 3.3 Programmeringsspråk Som programmeringsspråk valdes C#, som Visual Studio 2005 stödjer. C# utannonserades av Microsoft år 2000 tillsammans med.net-plattformen, och har sedan dess vuxit mer och mer. C# är objektorienterad och kan användas för att utveckla både Windowsapplikationer och webbapplikationer, då i kombination med ASP.NET. Fördelarna med C# är bland annat att det är enklare att utveckla program i än till exempel C++, eftersom man slipper bry sig om lågnivåproblem som minneshantering och pekare om man inte absolut vill. Det finns även garbage collector och mängder av färdiga programmeringsbibliotek som ytterligare förenklar för utvecklaren. Största nackdelen med C#.NET är att det bara är tänkt att ha stöd för utveckling mot Windows, vilket innebär att andra operativsystem inte kan köra program som är utvecklade i C#.NET. Det pågår dock utveckling av verktyg för att kunna köra program utvecklade i C#.NET på andra operativsystem, till exempel Linux, Unix och MacOS. [6] 3.4 TELNET och SMTP För att kunna simulera en verklig arbetsmiljö användes TELNET för att skicka e-post genom testservern. TELNET är ett nätverksprotokoll som finns tillgängligt för de allra flesta operativsystem, och kan användas för att kommunicera med en server över ett lokalt nät eller över Internet. TELNET är textbaserat och användes i det här projektet för att kontakta Exchange-servern och skicka e-post med SMTP-kommandon. Figur 3.1 visar exempel på ett e-brev som skickas med hjälp av TELNET. Först kopplar man upp mot den server som ska kontaktas och anger port för kommunikationen. Exchange arbetar med port 25. Därför använder jag den porten för kommunikation när jag kopplar upp mig med TELNET. När kommunikationen är upprättat, kan man börja skicka SMTP-kommandon. En serie av SMTP-kommandon börjar alltid med ett artigt HELO 1, eller den nyare formen EHLO, som lite finurligt står för Extended HELO. Servern ska då, som brukligt när man blir tilltalad, svara med en egen hälsningsfras. När den formaliteten är avklarad, anger man avsändare av e-brevet med mail from: användarnamn@domän.ext. Det går bara att ange en avsändare. En eller flera mottagare av e- brevet ska sedan anges med rcpt to: användarnamn@domän.ext. När det är avklarat, anger man det data man ska skicka genom att skriva kommandot data. Där skriver man vad själva e-brevet ska innehålla, och avslutar genom att trycka Enter, följt av en punkt och sedan Enter igen. E-brevet skickas då förhoppningsvis till alla de mottagare man har angett. 1 HELO betyder egentligen HELLO, men SMTP-kommandon består generellt av fyra bokstäver 6

11 Figur 3.1 Exempel på användning av TELNET för att skicka e-post. 4 Genomförande Examensarbetet delades in i tre delar. Först skulle Windows Server 2003 och Microsoft Exchange 2003 installeras, och eftersom jag inte tidigare har arbetat med vare sig Windows Server eller Exchange, så var jag tvungen att bekanta mig med miljön. Andra delen var en förundersökning för att hitta information om vad som är möjligt att göra med Exchange, och vad som är omöjligt. Går det ens att utföra det som är tanken med MSS? Hur kan MSS realiseras? Vad passar bäst för utvecklingen av MSS? Vad finns det för tekniker för att programmeringsmässigt arbeta med Microsoft Exchange? Vilka hjälpbibliotek och API: er finns det? Till sist så användes den kunskap jag fått av förundersökningen för att utveckla en färdig produkt. 4.1 Installation För att ha en server att arbeta mot och testa mina lösningar mot, installerades Windows Server 2003 och Microsoft Exchange 2003 på en dator hos Proplate. Proplate hade redan en existerande domän och ett fungerande Active directory, så servern konfigurerades för att använda samma domän. Domänen som användes heter bsab.s1, därför fick e-postlådorna på min server Om servern skulle konfigureras för att fungera som en publik server mot Internet, så går det att lägga till flera domänadresser utan att ändra windowsdomän. När installation var klar och användare hade skapats, testades e-postlådorna genom att jag kopplade upp mot servern och skickade e-post med hjälp av TELNET. 7

12 4.1.1 Proplates nätverksstruktur Proplate IT i Örebro har två ip-adresser in till kontoret. En används av de anställda för att surfa och den andra är upptagen av en server. Det innebar att min testserver under utvecklingen installerades internt, och kunde alltså inte nås utanför kontoret. Nätverkstrukturen visas i figur 4.1. En klientdator användes för att testa och utveckla mot servern. När utvecklingsarbetet var färdigt fick jag dock möjlighet att testa systemet mot Internet för att kunna testa prestanda, se avsnitt Figur 4.1 Proplates nätverksstruktur 8

13 4.2 Förundersökning Målet med förundersökningen var att finna information om de tekniker som finns för att kommunicera med Exchange programmeringsmässigt. När man väl vet vilka tekniker som finns, är det enklare att göra en mer exakt skiss över hur systemet kan fungera och se ut. Förundersökningen inledes med febrilt sökande efter information om vilka möjligheter det finns att utveckla program i C#.Net, som ska samarbeta med Exchange. Det fanns relativt gott om information att hitta i böcker, på Internet och Exchanges egen manual för utvecklare, Exchange SDK. Dock var det mycket fackspråk och förkortningar som det tog ett tag att reda ut. En teknik som absolut måste finnas med, är en metod att bli notifierad när nya e-brev har kommit in till servern. Det skulle gå att göra ett system som går igenom alla e-postlådor på servern med ett visst tidsintervall, men då skulle användarna kunnat ha hunnit radera sina e-brev mellan körningsintervallen. I avsnitt redogörs för de olika teknikerna jag hittade för att arbeta mot Exchange och vilka fördelar och nackdelar varje teknik innebär. I avsnitt redogörs för windowstjänst och webbtjänst. Slutsatsen av förundersökningen presenteras i avsnitt CDO CDO är förkortningen för Collaboration Data Objects som är ett programmeringsbibliotek utvecklat av Microsoft för att förenkla programmering mot bland annat Exchange och utbyte av data med Exchange. CDO släpptes först tillsammans med Exchange 5.5. Anledningen var att utvecklare hade efterfrågat ett bibliotek som stöder alla de funktioner som Exchange erbjuder, så som åtkomst av kalender, publika mappar och användarprofiler. Tidigare skedde all utveckling mot Exchange med Active Messaging-biblioteket, som främst kan användas får att komma åt och skicka e-post. CDO har primärt två användningsområden. Det första är för utvecklare som vill utveckla en e-postklient för att hämta och utbyta information med servern. Till exempel så har CDO används för att utveckla den webbklient som används av Exchange. [4] Det andra användningsområdet är för serverutvecklare som vill kunna komma åt och ändra innehållet i objekt som kommer in eller tas bort ur Exchange databasen. Exempel på detta kan vara e-post som har kommer in eller kalendernoteringar som registrerats. CDO biblioteket finns tillgängligt för de flesta av de moderna objektorienterade programmeringsspråken, så som C#, C++ och Java. Den senaste versionen av Exchange som har släppts, Exchange 2007, tillhandahåller webbtjänster för åtkomst av transportköer och e-post. Detta innebär att CDO har spelat ut sin roll ur utvecklingssynpunkt för nyare system. Exchange 2007 stödjer fortfarande CDO, men rekommendationen är att använda webbtjänsterna om ett system utvecklas specifikt mot Exchange Det är dock bättre att utveckla med hjälp av CDO om man vill att systemet ska vara bakåtkompatibelt med tidigare versioner av Exchange, ner till version 5.5. [5] En nackdel med CDO är att det utvecklade programmet som använder CDO för att kommunicera med en Exchange-server, måste vara installerat på samma dator som servern för att kommunikationen ska fungera. 9

14 4.2.2 WebDAV.Net for Exchange WebDAV är en förkortning av Web-based Distributed Authoring and Versioning, och är ett protokoll som utökar http med funktioner för att skicka kommandon för att öppna, ändra, söka eller ta bort filer. WebDAV.Net for Exchange är i sin tur ett API för C#, utvecklat av Independentsoft, som använder WebDAV för att låta användaren söka, skapa, hämta och sända data till eller från en Exchange-server. Genom att använda WebDAV for Exchange så behöver man som utvecklare inte bry sig om hur man bygger upp sina anrop med WebDAV-protokollet. Man slipper med andra ord uppfinna hjulet igen, utan kan enkelt och smidigt arbeta i C# med färdiga metoder. Fördelen med att använda WebDAV.Net for Exchange istället för CDO är att WebDAV är webb-baserat, och det går således att konstruera program som kan jobba mot Exchange utan att programmen behöver ligga på samma server Publika mappar i Exchange 2003 En publik mapp kan skapas på en Exchange-server för att göra information tillgänglig för flera av användarna i ett Active Directory. Mappen kan användas för att lagra meddelanden, filer, kalendrar eller kontaktlistor, och åtkomst styrs genom att sätta rättigheter med hjälp av de användargrupper som finns i ett Active Directory. När en användare har tilldelats rättighet till en publik mapp, så har den användaren åtkomst till allt som finns i den. Det går att skapa flera olika publika mappar med olika åtkomstinställningar Exchange databashändelser Databasen i Microsoft Exchange 2003 tillhandahåller tjänster för att registrera händelsehanterare. En händelsehanterare kan beskrivas som ett program som fångar upp och startar när vissa händelser sker. Det är sedan upp till programmeraren att bestämma vad som ska ske när en viss händelse sker. Man kan likna det vid en larmcentral som ett tjuvlarm är kopplat till. När larmet går då notifieras larmcentralen, och det är sedan upp till personalen att kontrollera om det var ett brandlarm eller tjuvlarm och efter det vidta lämpliga åtgärder. På liknande sätt så kan man koppla en metod till Exchange, som körs varje gång en viss händelse sker i databasen. I fallet med Exchange finns det flera olika händelser man kan monitorera. De kan delas in i tre kategorier: asynkrona, synkrona och systemhändelser. Systemhändelserna utlöses bara när Exchange startar eller stänger ner, och är därför inte intressanta i detta sammanhang Asynkrona händelser Exchange 2003 stödjer två typer av asynkrona händelser, OnSave och OnDelete. OnSave utlöses när någonting har sparas i databasen, exempelvis ett e-brev. OnDelete utlöses i sin tur när någonting har tagits bort. De asynkrona händelserna utlöses efter att en transaktion har blivit commitad i Exchangedatabasen. Ändringen har alltså redan blivit gjord, och det går därför inte att påverka objektet innan det sparas eller tas bort, utan kan mest användas för att meddela användaren när ett e- brev har sparats eller tagits bort. Den stora fördelen med asynkrona händelser är att händelsehanteraren kan arbeta med flera asynkrona händelser i taget, och servern blir inte låst vid att bara kunna hantera en sak. Nackdelarna med asynkrona händelser är att man aldrig kan vara säker på i vilken ordning som de olika händelserna kommer utlösas, och det går dessutom bara att registrera en asynkron händelsehanterare på enskilda e-postlådor, inte för att avlyssna all trafik som går in till servern eller ut från servern. 10

15 Synkrona händelser Det finns två typer av synkrona händelser som stöds av Exchanges databas: OnSyncSave och OnSyncDelete. De skiljer sig ganska markant från de asynkrona händelserna med liknande namn. De synkrona händelserna utlöses innan data sparas i Exchange-databasen, istället för efter att data har sparats. Detta innebär att det är praktiskt att använda synkrona händelser i program som ska kunna stoppa e-brev från att sparas, som till exempel ett spamfilter. Det är även en bra teknik att använda om man vill lägga till en viss text i varje e-brev som skickas, eller om man väl ändra någonting i rubriken. En fördel gentemot asynkrona händelser är att synkrona händelser alltid utlöses i den ordning de sker i Exchange-databasen. Nackdelen med en synkron lösning är att händelsestyrningen blir låst på det objekt som har utlöst händelsen och det kan påverka prestanda på servern mycket negativt. Om man som utvecklare är slarvig och skriver kod som tar lång tid att köra, så kan man låsa servern flera sekunder varje gång som e-post kommer in till servern. Händelsehanterare som lyssnar efter synkrona händelser kan, till skillnad från händelsehanterare som lyssnar efter asynkrona händelser, registreras både på enskilda e-postlådor och över hela Exchange-databasen. Dock går det bara att registrera händelsehanterare för inkommande e-post, inte för utgående SMTP händelsehanterare Inbyggt i Microsoft Internet Information Services (IIS) finns en SMTP-tjänst. Exchange använder den tjänsten för att kunna kommunicera över SMTP, så därför kan man förutom Exchanges inbyggda databashändelser även utnyttja de händelser som IIS erbjuder. SMTP tjänsten erbjuder två typer av händelsetyper: protokollhändelser och transporthändelser. Protokollhändelser utlöses av SMTPkommunikationen mellan klient och server genom att lyssna efter de kommandon som ingår i protokollet. De utlöses alltså av ett visst protokollkommando ur SMTP-protokollet, exempelvis mail from:. Transporthändelserna sker när e-post går genom transportsystemet i SMTP tjänsten, oavsett om det är inkommande eller utgående e-post. Ursprungligen var de händelser som utlöses av SMTP endast tillgängliga genom att man skrev en COM-applikation i Microsoft Visual C++. Dessa är krångliga och svåra att skriva, så Microsoft har även utvecklat en CDO-wrapper till händelsen OnArrival. CDO_OnArrival är en CDOimplementation av transporthändelsen OnArrival, och innebär att man kan utveckla en händelsehanterare i.net-miljö för denna. OnArrival-händelsen utlöses varje gång som SMTPprotokollet används av IIS, det vill säga varje gång som e-post skickas ut eller in till en Exchangeserver. Hanteringen av OnArrival-händelser sker synkront, vilket innebär samma fördelar och nackdelar som för Exchange-databasens synkrona händelser. De stora och viktiga skillnaderna är att en OnArrival händelse bara utlöses av e-post, de går att registrera över hela databasen, det utlöses både av inkommande och utgående e-brev samt att händelsehanteraren går att utveckla i C#. När händelsen har utlösts, då har programmeraren tillgång till det e-brev som har utlöst händelsen i form av ett CDO.Imessage-gränssnitt. IMessage innehåller allt om e-brevet som är av intresse för programmeraren. Avsändare, mottagare, rubrik, textinnehåll, bifogade filer och datum är några av de användbara attribut som finns tillgängliga. 11

16 4.2.6 Windowstjänst En windowstjänst är ett program som körs i bakgrunden av Windows, utan ett synligt gränssnitt mot användaren. Man kan välja att starta windowstjänsten manuellt efter att Windows har startats, eller automatiskt i samband med att Windows startar. Tjänsten körs sedan så länge som Windows är igång, eller tills användaren väljer att avbryta tjänsten. Utvecklingen av en windowstjänst görs ofta och enklast i Visual Studio med valfritt språk, eftersom Visual Studio har många hjälpmedel för att skapa och köra en windowstjänst. En windowstjänst passar utmärkt till ett program som inte kräver någon respons eller inmatning från användaren. Figur 4.2 Windows verktyg för att hantera windowstjänster Webbtjänst En webbtjänst är ett program som fungerar som gränssnitt mellan en applikation och ett nätverk, i vanliga fall Internet. Webbtjänsten använder sig av HTML och XML för att kommunicera, och eftersom det är ett plattformsoberoende protokoll, så är webbtjänster en mycket flexibel metod att utbyta data. Språket som används kallas Web Services Description Language (WSDL) och är uppbyggt av XML-taggar. Det är relativt svårt och krångligt att skriva en webbtjänst för hand, eftersom alla kommandon skickas som taggar. Det finns därför flera olika hjälpmedel för att utveckla webbtjänster, bland annat så tillhandahåller Visual Studio 2005 färdiga mallar för utveckling av webbtjänster. Fördelarna med att använda webbtjänster är att de är plattformsoberoende och ett enkelt sätt att komma åt sin applikation från Internet. 12

17 4.2.8 Slutsats av förundersökningen För mitt system, där varje ingående och utgående e-postmeddelande ska lagras, är det bäst att utveckla en SMTP-händelsehanterare för att notifieras när e-post kommer in eller ut, eftersom den går att applicera både på ingående och utgående e-post. CDO wrappern runt OnArrival-händelsen möjliggör utveckling av händelsehanteraren i det språk jag vill använda, i detta fall C#. Eftersom hanteringen av OnArrival sker synkront, är det viktigt att jag utvecklar händelsehanteraren med hänsyn till prestanda och gör ordentliga tester så att prestanda på servern inte blir lidande. När händelsen har utlösts är det smidigast att använda WebDAV for Exchange för att lagra e-brevet i en publik mapp, som går att nå genom att specificera en användarinloggning som har tillgång till den mappen. När e-breven väl är sparade i den publika mappen, då kommer en windowstjänst att gå igenom alla e-brev enligt ett konfigurerbart tidsintervall och matcha avsändaren och mottagarna till varje e-brev mot en lista med e- post adresser. Om en eller flera e-postadresser matchar, så adderas hela e-brevet till en array, som skickas till en webbtjänst för vidare behandling. Webbtjänsten bidrar till att göra systemet mer abstrakt och förenklar utveckling av ytterligare funktionalitet till MSS. Webbtjänsten har hand om all kommunikation med en databas, som används för att spara all e-post som skickas från windowstjänsten. 13

Compose Connect. Hosted Exchange

Compose Connect. Hosted Exchange Sida 1 av 15 Compose Connect Hosted Exchange Presentation av lösningen: Compose Hosted Exchange Följande möjligheter finns för hantering av e-post 1. Lokalinstallerad Outlook-klient För att kunna använda

Läs mer

E-posthantering med Novell Groupwise WebAccess

E-posthantering med Novell Groupwise WebAccess E-posthantering med Novell Groupwise WebAccess En liten hjälpreda sammanställd av Thomas Granhäll. Materialet får kopieras fritt! 2003 Följande moment behandlas i denna manual: 1. Logga in 2. Ta emot och

Läs mer

Användarhandbok. Trio Visit Web. Trio Enterprise 4.1

Användarhandbok. Trio Visit Web. Trio Enterprise 4.1 Användarhandbok Trio Visit Web Trio Enterprise 4.1 COPYRIGHT NOTICE: No part of this document may be reproduced, distributed, stored in a retrieval system or translated into any language, including but

Läs mer

Systemutvecklare SU14, Malmö

Systemutvecklare SU14, Malmö Systemutvecklare SU14, Malmö Tentamen, Tenta Utveckling med ramverket.net(35 YH-poäng) Plats: Plushögskolan Malmö Tid: 2 februari 2015, kl. 9.00-12.00 Tillåtna hjälpmedel: Papper, penna, suddgummi. Ej

Läs mer

Inledande programmering med C# (1DV402) Introduktion till C#

Inledande programmering med C# (1DV402) Introduktion till C# Introduktion till C# Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får använda detta verk så här: Allt innehåll i

Läs mer

Det här dokumentet är till för att ge en översikt över ASP.NET MVC samt hur WCF Services används från.net applikationer.

Det här dokumentet är till för att ge en översikt över ASP.NET MVC samt hur WCF Services används från.net applikationer. Informationsinfrastruktur 7.5 hp Mattias Nordlindh Inledning Det här dokumentet är till för att ge en översikt över ASP.NET MVC samt hur WCF Services används från.net applikationer. Dokumentet består av

Läs mer

Startanvisning för Bornets Internet

Startanvisning för Bornets Internet Startanvisning för Bornets Internet Denna guide kommer att hjälpa dig igång med Bornets Internet. Sidan 1 av 41 Innehållsförteckning Titel Sidan Kapitel 1. Introduktion... 3 Kapitel 2. TCP/IP-inställningar

Läs mer

Webbservrar, severskript & webbproduktion

Webbservrar, severskript & webbproduktion Webbprogrammering Webbservrar, severskript & webbproduktion 1 Vad är en webbserver En webbserver är en tjänst som lyssnar på port 80. Den hanterar tillgång till filer och kataloger genom att kommunicera

Läs mer

Innehållsförteckning:

Innehållsförteckning: Dokumenttitel Datum Godkänd av Sid SIT24 Manual E-post 2007-03-09 Sign 1(14) Utgivare/Handläggare Dokumentbeteckning Version Info Klass Björn Carlsson SIT24 mailmanual.doc 1.0.2 Öppen SIT24 Manual E-Post

Läs mer

Storegate Pro Backup. Innehåll

Storegate Pro Backup. Innehåll Storegate Pro Backup Välkommen! I denna manual kan du bland annat läsa om funktioner och hur du ska konfigurerar programmet. Läs gärna vårt exempel om versionshantering och lagringsmängd innan du konfigurerar

Läs mer

Vad är molnet?... 2. Vad är NAV i molnet?... 3. Vem passar NAV i molnet för?... 4. Fördelar med NAV i molnet... 5. Kom igång snabbt...

Vad är molnet?... 2. Vad är NAV i molnet?... 3. Vem passar NAV i molnet för?... 4. Fördelar med NAV i molnet... 5. Kom igång snabbt... Produktblad för NAV i molnet Innehåll Vad är molnet?... 2 Vad är NAV i molnet?... 3 Vem passar NAV i molnet för?... 4 Fördelar med NAV i molnet... 5 Kom igång snabbt... 5 Bli kostnadseffektiv... 5 Enkelt

Läs mer

Programutvecklingsprojekt Projektgrupp Elvin. Detailed Design Document

Programutvecklingsprojekt Projektgrupp Elvin. Detailed Design Document Programutvecklingsprojekt 2003-04-24 Projektgrupp Elvin Detailed Design Document Björn Engdahl Fredrik Dahlström Mats Eriksson Staffan Friberg Thomas Glod Tom Eriksson engdahl@kth.se fd@kth.se d94-mae@nada.kth.se

Läs mer

Manual för Aktiv Ungdoms e-post (Zimbra)

Manual för Aktiv Ungdoms e-post (Zimbra) Manual för Aktiv Ungdoms e-post (Zimbra) fr.o.m 10 juni 2011 Introduktion... 2 Inloggning... 2 E-post... 3 Samla e-posten i konversationer eller som separata meddelanden... 3 Skicka e-post... 3 Adresslistor...

Läs mer

F5 Exchange 2007. 2013-01-16 Elektronikcentrum i Svängsta Utbildning AB 2013-01-16 1

F5 Exchange 2007. 2013-01-16 Elektronikcentrum i Svängsta Utbildning AB 2013-01-16 1 F5 Exchange 2007 2013-01-16 Elektronikcentrum i Svängsta Utbildning AB 2013-01-16 1 Spam Control and Filtering Elektronikcentrum i Svängsta Utbildning AB 2013-01-16 2 Idag: Relaying Spamhantering och filtrering

Läs mer

Bordermail instruktionsmanual

Bordermail instruktionsmanual Bordermail instruktionsmanual Du kan själv skapa upp till 4 nya e-postadresser via självadministrationssidorna Du kan läsa och skicka e-post på 2 sätt För att komma till självadministrationssidorna öppna

Läs mer

Flexi Exchange Connector. Copyright 1993-2013 Datatal AB. Med ensamrätt. Copyright 2013 Datatal AB. All rights reserved.

Flexi Exchange Connector. Copyright 1993-2013 Datatal AB. Med ensamrätt. Copyright 2013 Datatal AB. All rights reserved. Flexi Exchange Connector Copyright 1993-2013 Datatal AB. Med ensamrätt. Copyright 2013 Datatal AB. All rights reserved. 1 Översikt... 2 1.1 Vad gör Flexi Exchange Connector?... 2 1.2 Vilka serverkonfigurationer

Läs mer

Daniel Akenine, Teknikchef, Microsoft Sverige

Daniel Akenine, Teknikchef, Microsoft Sverige Daniel Akenine, Teknikchef, Microsoft Sverige Quincy Invånare: 5,300 Arbete: 52% jordbruk 18 % byggsektor 18 % offentlig sektor Språk: Spanska 57% Företaget Inköp Företaget Inköp Installering Lång

Läs mer

Lathund. Inställningar för att läsa e-post. Webbmail, Windows Mail, MacMail, OutlookExpress, Microsoft Outlook och Mozilla Thunderbird

Lathund. Inställningar för att läsa e-post. Webbmail, Windows Mail, MacMail, OutlookExpress, Microsoft Outlook och Mozilla Thunderbird Lathund Inställningar för att läsa e-post Webbmail, Windows Mail, MacMail, OutlookExpress, Microsoft Outlook och Mozilla Thunderbird Stockholms Stadsnät Kundtjänst telefon 08-5012 20 10 e-post: support@stosn.se

Läs mer

INSTALLATION AV KLIENT

INSTALLATION AV KLIENT INSTALLATION AV KLIENT BOOK-IT 8.0 2015-03-27 Axiell Sverige AB, Box 24014, 224 21 Lund Fältspatvägen 4, 224 78 Lund, tel: 046-2700 400, e-post: axiellsverige@axiell.com Innehållsförteckning Förberedelse

Läs mer

Distribuerade affärssystem

Distribuerade affärssystem Distribuerade affärssystem Kursens mål Bygga upp, strukturera och programmera distribuerade system med en flerskiktsarkitektur Beskriva och förklara teorier och uttryck som används inom affärskritiska

Läs mer

Java: Utvecklingsverktyg, datatyper, kontrollstrukturer

Java: Utvecklingsverktyg, datatyper, kontrollstrukturer Java: Utvecklingsverktyg, datatyper, kontrollstrukturer Sven-Olof Nyström Uppsala Universitet 13 juni 2005 1 Utvecklingsverktyg för Java Vi rekommenderar Suns utvecklingsverktyg (SDK, tidigare JDK), se

Läs mer

Innehåll. Dokumentet gäller från och med version 2014.3 1

Innehåll. Dokumentet gäller från och med version 2014.3 1 Innehåll Introduktion... 2 Före installation... 2 Beroenden... 2 Syftet med programmet... 2 Installation av IIS... 2 Windows Server 2008... 2 Windows Server 2012... 6 Installation av webbapplikationen

Läs mer

Skapa din egen MediaWiki

Skapa din egen MediaWiki Skapa din egen MediaWiki Inledning och syfte I detta moment skall du installera en egen wiki (Mediawiki), som du skall konfigurera. Du har möjligheten att använda en egen wiki på din dator eller webbhotell

Läs mer

PROGES PLUS THERMOSCAN RF. Instruktionsmanual V. 061115

PROGES PLUS THERMOSCAN RF. Instruktionsmanual V. 061115 ThermoScan RF användarinstruktioner 1 PROGES PLUS THERMOSCAN RF Instruktionsmanual V. 061115 Viktigt! Den här manualen innehåller ett antal lösenord som endast är avsedda för administratörerna. Glöm inte

Läs mer

Kopiering av objekt i Java

Kopiering av objekt i Java 1 (6) Kopiering av objekt i Java Först När du läser detta papper bör du samtidigt studera dokumentationen för klasserna Object, Cloneable (java.lang) och ArrayList (java.util). Mycket blir klarare genom

Läs mer

Programmering B med Visual C++ 2008

Programmering B med Visual C++ 2008 Programmering B med Visual C++ 2008 Innehållsförteckning 1 Repetition och lite nytt...5 I detta kapitel... 5 Programexekvering... 5 Loop... 5 Källkod... 6 Verktyg... 6 Säkerhetskopiera... 6 Öppna, kompilera,

Läs mer

Startguide för Administratör Kom igång med Microsoft Office 365

Startguide för Administratör Kom igång med Microsoft Office 365 Startguide för Administratör Kom igång med Microsoft Office 365 Version 1.0 Introduktion Skapa ett MSPA-konto Aktivera Office 365 i Telia Business Apps Verifiera företagets domännamn Lägg till användare

Läs mer

WWW. Exempel på klientsidan. Överföring av en html-fil. Snyggare variant. Verkligt format. Meddelandeformat för begäran HTTP

WWW. Exempel på klientsidan. Överföring av en html-fil. Snyggare variant. Verkligt format. Meddelandeformat för begäran HTTP Exempel på klientsidan WWW Javascript-interpretator XML-interpretator HTML-interpretator Java-interpretator CSS-interpretator Använder TCP Kan återanvända uppkoppling Inga tillstånd hos servern OS API

Läs mer

ASP.NET Thomas Mejtoft

ASP.NET Thomas Mejtoft ASP.NET Introduktion till ASP.NET Utveckla i ASP.NET I ASP.NET kan och bör man separera HTML-kod från övrig kod (C#, VB ) I enklare fall läggas kod i script-block Vanligtvis läggs den i en Code Behind-fil

Läs mer

BlackBerry Internet Service. Version: 4.5.1. Användarhandbok

BlackBerry Internet Service. Version: 4.5.1. Användarhandbok BlackBerry Internet Service Version: 4.5.1 Användarhandbok Publicerad: 2014-01-09 SWD-20140109133738600 Innehåll 1 Komma igång... 7 Om serviceplanerna för meddelanden för BlackBerry Internet Service...7

Läs mer

Webbtjänster med API er

Webbtjänster med API er Webbtjänster med API er Mål med lektionen! Titta på hur service:ar fungerar och hur vi programmerar dem. Vad lektionen omfattar WCF Service WCF Services Vad är en WCF service? En WCF Service är ett program

Läs mer

Kalendersynkronisering. med Exchange. Vitec Express juli 2014 INSTRUKTIONSMANUAL FRÅN VITEC

Kalendersynkronisering. med Exchange. Vitec Express juli 2014 INSTRUKTIONSMANUAL FRÅN VITEC INSTRUKTIONSMANUAL FRÅN VITEC VITEC Kalendersynkronisering med Exchange Vitec Express juli 2014 VITEC Affärsområde Mäklare www.vitec.se/maklare info.maklare@vitec.se GÖTEBORG: REDEGATAN 1 B, 426 77 V.

Läs mer

Hogias Ekonomisystem. Systemkrav för enanvändarinstallation fr o m version 2015.1 av GENERELLA KRAV

Hogias Ekonomisystem. Systemkrav för enanvändarinstallation fr o m version 2015.1 av GENERELLA KRAV Systemkrav för enanvändarinstallation fr o m version 2015.1 av Hogias Ekonomisystem Systemkraven specificerar de miljöer och förutsättningar som programvaran är testad i och som vi rekommenderar för att

Läs mer

Systemkrav 2014 för enanvändarinstallation fr o m version 2014.2 av

Systemkrav 2014 för enanvändarinstallation fr o m version 2014.2 av Systemkrav 2014 för enanvändarinstallation fr o m version 2014.2 av Hogias ekonomisystem Systemkraven specificerar de miljöer och förutsättningar som programvaran är testad i och som vi rekommenderar för

Läs mer

dit06omr@cs.umu.se 12 juni 2009 Projektplan Webb-baserat bokningssystem för flyg Kurs: Applikationsutveckling för internet, TFE

dit06omr@cs.umu.se 12 juni 2009 Projektplan Webb-baserat bokningssystem för flyg Kurs: Applikationsutveckling för internet, TFE Projektplan Webb-baserat bokningssystem för flyg Kurs: Applikationsutveckling för internet, TFE VT-09 Innehållsförteckning Inledning & problembeskrivning...1 Systembeskrivning...2 Affärsobjekt...2 Databasen...4

Läs mer

Snabbguide till First Class

Snabbguide till First Class Snabbguide till First Class Guide till First Class Grundläggande funktioner Logga in i First Class För att logga in i First Class dubbelklickar du på skrivbordsikonen First Class, eller väljer First Class

Läs mer

FIRSTCLASS. Innehåll:

FIRSTCLASS. Innehåll: FIRSTCLASS Innehåll: Hämta klient...2 Installera klient...2 Konfigurera klient...2 Koppla upp...3 Skrivbordet...3 Mailbox...3 Presentation...3 Skapa ett nytt meddelande...4 Söka mottagare för nytt meddelande...4

Läs mer

SaaS Email and Web Services 8.3.0

SaaS Email and Web Services 8.3.0 Versionsinformation Version A SaaS Email and Web Services 8.3.0 Innehåll Om den här utgåvan Nya funktioner Lösta problem Hitta McAfee SaaS tjänstedokumentation Om den här utgåvan Tack för att du väljer

Läs mer

Quick Start CABAS. Generella systemkrav CABAS / CAB Plan. Kommunikation. Säkerhet

Quick Start CABAS. Generella systemkrav CABAS / CAB Plan. Kommunikation. Säkerhet Gunnel Frogedal 2014-07-17 6 32753 1 of 5 Quick Start CABAS Generella systemkrav CABAS / CAB Plan Applikationen stöds av följande operativsystem: Windows Vista SP2 Windows 7 SP1 Windows 8 (inte RT) Windows

Läs mer

INNEHÅLL 30 juni 2015

INNEHÅLL 30 juni 2015 INNEHÅLL 30 juni 2015 INNEHÅLL 1 Introduktion 1 1.1 Inloggning...................................... 1 2 E-post 3 2.1 Administrera din e-post............................... 3 2.1.1 Skapa vidarebefodran

Läs mer

Sokigo AB OVK 2.0. Pentium- eller AMD-processor (x64 processor) på 1,6 GHz Dual Core eller motsvarande.

Sokigo AB OVK 2.0. Pentium- eller AMD-processor (x64 processor) på 1,6 GHz Dual Core eller motsvarande. OVK 2 Systemkrav Dokument Datum / Date Signatur Sida / Page Systemkrav 2016-06-22 2 (6) OVK 2.0 Systemkrav för OVK2 Dokumentet beskriver de krav som systemet ställer på maskinvara och programvara i de

Läs mer

Webbtjänster med API er

Webbtjänster med API er Webbtjänster med API er Mål med lektionen! Veta kursmålen. Lite grunder om WCF Vem är jag? Mitt namn är Björn Jönsson och jobbar på Tahoe Solutions, ni når mig via mail: bjorn.jonsson@tahoesolutions.se

Läs mer

Föreläsning 8 - del 2: Objektorienterad programmering - avancerat

Föreläsning 8 - del 2: Objektorienterad programmering - avancerat Föreläsning 8 - del 2: Objektorienterad programmering - avancerat Johan Falkenjack johan.falkenjack@liu.se Linköpings universitet Sweden December 4, 2013 1 Innehåll Arv och andra viktiga begrepp Abstrakta

Läs mer

INSTALLATION AV KLIENT

INSTALLATION AV KLIENT INSTALLATION AV KLIENT BOOK-IT 7.1 2013-11-27 Axiell Sverige AB, Box 24014, 224 21 Lund Fältspatvägen 4, 224 78 Lund, tel: 046-2700 400, e-post: lund@axiell.com Innehållsförteckning Förberedelse inför

Läs mer

LEX INSTRUKTION LEX LDAP

LEX INSTRUKTION LEX LDAP LEX INSTRUKTION LEX LDAP Innehållsförteckning LEX INSTRUKTION LEX LDAP... 1 1 INLEDNING... 1 2 INSTALLATION... 2 3 LEXLDAPSERVICE - KLIENTEN... 3 3.1 HUVUDFÖNSTER... 3 3.2 INSTÄLLNINGAR... 4 3.2.1 Lex...

Läs mer

E-post. A. Windows Mail. Öppna alternativ. Placera ikonen på skrivbordet.

E-post. A. Windows Mail. Öppna alternativ. Placera ikonen på skrivbordet. E-post A. Windows Mail Öppna alternativ Klicka på startknappen Startmenyn öppnas Klicka på Alla Program Leta reda på Windows Mail Dubbelklicka Windows Mail öppnas. Om ikonen ligger i Start-menyn Klicka

Läs mer

Föreläsning 2. Operativsystem och programmering

Föreläsning 2. Operativsystem och programmering Föreläsning 2 Operativsystem och programmering Behov av operativsystem En dator så som beskriven i förra föreläsningen är nästan oanvändbar. Processorn kan bara ges enkla instruktioner såsom hämta data

Läs mer

Objektorienterade programmeringsspråk. Objektorienterade språk. Den objekt-orienterade modellen. Jämför med icke-oo

Objektorienterade programmeringsspråk. Objektorienterade språk. Den objekt-orienterade modellen. Jämför med icke-oo Objektorienterade språk Historik Simula 67 Smalltalk 80 Procedurorienterad programmering Subprogram Programbibliotek Dataorienterad programmering Abstrakta datatyper Objektbaserade språk, föregångare till

Läs mer

DAT043 - Föreläsning 7

DAT043 - Föreläsning 7 DAT043 - Föreläsning 7 Model-View-Controller, mer om klasser och interface (arv, ) 2017-02-06 Designmönstret Observer avläser Observer Observable meddelar Observer avläser En eller flera objekt registrerar

Läs mer

Instruktion. Datum. 2013-06-19 1 (12) Coverage Dokument id Rev Status? - 1.0 Godkänd. Tillhör objekt -

Instruktion. Datum. 2013-06-19 1 (12) Coverage Dokument id Rev Status? - 1.0 Godkänd. Tillhör objekt - 20130619 1 (12)? 1.0 Godkänd Secure Manager Guide Hantera användarprofiler i tjänsten Telia Secure Manager Dokumentet beskriver hur du som administratör beställer och hanterar användarprofiler i administrationsportalen

Läs mer

SQLs delar. Idag. Att utplåna en databas. Skapa en databas

SQLs delar. Idag. Att utplåna en databas. Skapa en databas Idag SQLs delar Hur skapar vi och underhåller en databas? Hur skapar man tabeller? Hur får man in data i tabellerna? Hur ändrar man innehållet i en tabell? Index? Vad är det och varför behövs de? Behöver

Läs mer

Classes och Interfaces, Objects och References, Initialization

Classes och Interfaces, Objects och References, Initialization Classes och Interfaces, Objects och References, Initialization Objekt-orienterad programmering och design (DIT953) Niklas Broberg/Johannes Åman Pohjola, 2018 Abstract class En abstract class är en class

Läs mer

INSTALLATION AV KLIENT

INSTALLATION AV KLIENT 2016-09-07 INSTALLATION AV KLIENT BOOK-IT version 9.0 Axiell Sverige AB, Box 24014, 224 21 Lund. Besöksadress: Fältspatsvägen 4, 224 78 Lund tel 046-270 04 00, e-post: axiellsverige@axiell.com, www.axiell.se

Läs mer

version: 200702-1 Sidan 1 av 5

version: 200702-1 Sidan 1 av 5 version: 200702-1 Sidan 1 av 5 Ditt användarnamn: cykel.a@bck.nu Lösenord: pedal ALLMÄNT SajtMail är ett E-post system som går att komma åt via SajtMail Web som är en lösning där du använder din webbläsare

Läs mer

Systemkrav. www.hogia.se/approval. Systemkrav för Hogia Approval Manager. Gäller från och med programversion 2012.1

Systemkrav. www.hogia.se/approval. Systemkrav för Hogia Approval Manager. Gäller från och med programversion 2012.1 Systemkrav Systemkrav för Hogia Approval Manager Gäller från och med programversion 2012.1 För produkten Hogia Approval Manager gäller samma systemkrav som för ekonomisystemet, med vissa tillägg. Tilläggen

Läs mer

Skicka SMS/e-post påminnelser från Microsoft Excel

Skicka SMS/e-post påminnelser från Microsoft Excel SMS REMINDER Skicka SMS/e-post påminnelser från Microsoft Excel Idag har det blivit alltmer populärt att tillhandahålla tjänsten att påminna kunder och medlemmar om kommande möten eller besök via SMS eller

Läs mer

Installationsanvisningar VisiWeb. Ansvarig: Visi Closetalk AB Version: 2.3 Datum: 2009-12-14 Mottagare: Visi Web kund

Installationsanvisningar VisiWeb. Ansvarig: Visi Closetalk AB Version: 2.3 Datum: 2009-12-14 Mottagare: Visi Web kund Sida: 1(7) Installationsanvisningar VisiWeb Ansvarig: Visi Closetalk AB Version: 2.3 Datum: 2009-12-14 Mottagare: Visi Web kund Detta dokument Detta dokument beskriver hur man installerar VisiWeb på en

Läs mer

Sokigo AB Ecos Pentium- eller AMD-processor (x64 processor) på 1,6 GHz Dual Core eller motsvarande.

Sokigo AB Ecos Pentium- eller AMD-processor (x64 processor) på 1,6 GHz Dual Core eller motsvarande. Ecos Systemkrav Systemkrav 2016-11-25 2 (6) Systemkrav för Ecos Dokumentet beskriver de krav som systemet ställer på maskinvara och programvara i de servrar och klientdatorer som ska användas för systemet.

Läs mer

Logga in... 3. Översikt/Dashboard... 4. Avvikande produkter... 4. Arbeten misslyckades... 4. Senaste gjorda... 4. Systemmeddelanden...

Logga in... 3. Översikt/Dashboard... 4. Avvikande produkter... 4. Arbeten misslyckades... 4. Senaste gjorda... 4. Systemmeddelanden... Innehållsförteckning Logga in... 3 Översikt/Dashboard... 4 Avvikande produkter... 4 Arbeten misslyckades... 4 Senaste gjorda... 4 Systemmeddelanden... 4 Användare... 6 Lägg till ny användare... 6 Redigera/radera

Läs mer

UochM Kundsupport 1. Du har fått ett e-mail från UochM med följande information (har du inte fått det så kontaktar du UochM):

UochM Kundsupport 1. Du har fått ett e-mail från UochM med följande information (har du inte fått det så kontaktar du UochM): UochM Kundsupport 1 Lägg till ett nytt e-postkonto Du har fått ett e-mail från UochM med följande information (har du inte fått det så kontaktar du UochM): E-postkonto (t.ex. demo@uochm.com) Användarnamn

Läs mer

Systemintegration Outlook

Systemintegration Outlook Konfiguration för Outlook Exchange Systemintegration Outlook gör det möjligt att hantera sina hänvisningar hos itell via Outlook. För att detta ska fungera måste tjänsten kunna logga in och läsa och ändra

Läs mer

LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p

LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p UMEÅ UNIVERSITET Datavetenskap 010530 LÖSNINGSFÖRSLAG Programmeringsteknik För Ing. - Java, 5p Betygsgränser 3 21,5-27 4 27,5-33,5 5 34-43 Uppgift 1. (4p) Hitta de fel som finns i nedanstående klass (det

Läs mer

Arv: Fordonsexempel. Arv. Arv: fordonsexempel (forts) Arv: Ett exempel. En klassdefinition class A extends B {... }

Arv: Fordonsexempel. Arv. Arv: fordonsexempel (forts) Arv: Ett exempel. En klassdefinition class A extends B {... } En klassdefinition class A extends B {... Arv definierar en klass A som ärver av B. Klassen A ärver alla fält och metoder som är definierade för B. A är en subklass till B. B är en superklass till A. class

Läs mer

Ladda upp filer fra n PLC till PC

Ladda upp filer fra n PLC till PC Supportdokument Ladda upp filer fra n PLC till PC Synpunkter, felaktigheter, önskemål etc. för dokumentet meddelas Fil: Malthe_Suppo_Ladda upp filer från.docx Innehållsförteckning 1. Allmänt... 2 2. Installation

Läs mer

Collector en Android-app för att samla saker. Kim Grönqvist (kg222dk) 2013-06-10 Slutrapport

Collector en Android-app för att samla saker. Kim Grönqvist (kg222dk) 2013-06-10 Slutrapport Collector en Android-app för att samla saker Kim Grönqvist (kg222dk) 2013-06-10 Slutrapport Abstrakt Jag har gjort en Android-app för att samla saker, Collector. Med den kan man upprätta att göra-listor

Läs mer

Diagnostisktprov Utveckla i Azure

Diagnostisktprov Utveckla i Azure .easec Diagnostisktprov Utveckla i Azure Mats Johannesson 2015-06-08 1 o Indikerar ett svar önskas. Flera svar önskas. Maxpoäng: 86 Din poäng: Godkänt: 43 poäng Väl Godkänt: 60 poäng 2 1. Vilka fyra alternativ

Läs mer

johannes.bergarp@gmail.com

johannes.bergarp@gmail.com 1 johannes.bergarp@gmail.com 2 Ställa in konton 3 Välj Apple-menyn > Systeminställningar och klicka sedan på E-post, kontakter, kalendrar. Inställningspanelen E-post, kontakter och kalendrar 4 Använd inställningspanelen

Läs mer

Objektorienterad programmering i Java I

Objektorienterad programmering i Java I Laboration 0 Objektorienterad programmering i Java I Uppgifter: 2 Beräknad tid: ca 2 3 timmar Att läsa: sidan 45 52 Syfte: Att ladda hem och installera utvecklingsmiljön Att skriva ditt första Javaprogram

Läs mer

Manuell installation av SQL Server 2008 R2 Express för SSF Timing

Manuell installation av SQL Server 2008 R2 Express för SSF Timing Manuell installation av SQL Server 2008 R2 Express för SSF Timing Innehåll 1. Metoder att installera...1 2. Förutsättningar...2 DotNet Framework 3.5...2 MSI Installer 4.5...2 3. Hämta SQL Server 2008 R2

Läs mer

Del 1: Skapa konto i Exchange

Del 1: Skapa konto i Exchange Adminguide Del 1: Skapa kontot i Exchange Del 2: Aktivera kontot i Office 365 Del 3: Anpassa kontot till ITarbetsplatsen Del 4: Installera dator i ITarbetsplatsen Del 5: ITarbertsplatsen - dator till användarkonto

Läs mer

Byggsektorns Miljöberäkningsverktyg Användarmanual

Byggsektorns Miljöberäkningsverktyg Användarmanual IVL Svenska Miljöinstitutet Byggsektorns Miljöberäkningsverktyg Användarmanual Version 1.1 December 17, 2018 Författare: Anders Sidvall Nils Boberg 12/17/2018 Page 1 Innehållsförteckning INSTALLERA BYGGSEKTORNS

Läs mer

Använda Outlook 2003 mot Exchange

Använda Outlook 2003 mot Exchange Använda Outlook 2003 mot Exchange Jens Granlund 6.4.2006 Exchange kalendern kan användas via webben (Outlook Web Access) på adressen https://exchange.vasa.abo.fi/exchange eller om du har en mobiltelefon

Läs mer

Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6

Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6 Laboration 2 Objektorienterad programmering i Java I Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6 Syfte: Att kunna använda sig av olika villkors- och kontrollflödeskonstruktioner

Läs mer

Grundläggande datavetenskap, 4p

Grundläggande datavetenskap, 4p Grundläggande datavetenskap, 4p Kapitel 4 Nätverk och Internet Utgående från boken Computer Science av: J. Glenn Brookshear 2004-11-23 IT och medier 1 Innehåll Nätverk Benämningar Topologier Sammankoppling

Läs mer

F2 Exchange 2007. 2013-01-16 EC Utbildning AB 2013-01-16

F2 Exchange 2007. 2013-01-16 EC Utbildning AB 2013-01-16 F2 Exchange 2007 1 F2 Idag: Exchange i SBS 2008 Planering av systemet Exchange struktur, AD/GC/hierarki Core Components Management, Connectors Serverroller 2 Exchange Server i Small Business Server 2008?

Läs mer

Arbetshäfte Office 365 en första introduktion

Arbetshäfte Office 365 en första introduktion Arbetshäfte Office 365 en första introduktion Innehåll En introduktion för att bekanta sig med O365... 2 Skapa din profil... 2 Övning:... 3 2. Kontakter... 4 Lägg till kontakt och grupp... 4 Övning:...

Läs mer

TUTORIAL: KLASSER & OBJEKT

TUTORIAL: KLASSER & OBJEKT TUTORIAL: KLASSER & OBJEKT I denna tutorial lär vi oss att använda klasser och objekt samt hur vi bygger en enkel applikation kring dessa. I tutorialen kommer det finnas en mängd kod som du antingen kan

Läs mer

Office 365 MB. Innehåll. Inledning / Inställningar... 2. Outlook (e-post)... 2. Kalender... 3. Personer (kontakter)... 5 OneDrive molnet... 5.

Office 365 MB. Innehåll. Inledning / Inställningar... 2. Outlook (e-post)... 2. Kalender... 3. Personer (kontakter)... 5 OneDrive molnet... 5. Innehåll Inledning / Inställningar... 2 Inloggning...2 Koppling av mobiltelefonen / pekplatta till systemet...2 Ladda Office 365 till egen dator...2 Tema...2 Outlook (e-post)... 2 E-post inställningar...2

Läs mer

Kort om World Wide Web (webben)

Kort om World Wide Web (webben) KAPITEL 1 Grunder I det här kapitlet ska jag gå igenom allmänt om vad Internet är och vad som krävs för att skapa en hemsida. Plus lite annat smått och gott som är bra att känna till innan vi kör igång.

Läs mer

Olika slags datornätverk. Föreläsning 5 Internet ARPANET, 1971. Internet började med ARPANET

Olika slags datornätverk. Föreläsning 5 Internet ARPANET, 1971. Internet började med ARPANET Olika slags datornätverk Förberedelse inför laboration 4. Historik Protokoll, / Adressering, namnservrar WWW, HTML Föreläsning 5 Internet LAN Local Area Network student.lth.se (ganska stort LAN) MAN Metropolitan

Läs mer

Mål med lektionen! Veta kursmålen. Ha kännedom om några av de grundläggande begreppen.

Mål med lektionen! Veta kursmålen. Ha kännedom om några av de grundläggande begreppen. Entity Framework Mål med lektionen! Veta kursmålen. Ha kännedom om några av de grundläggande begreppen. Vem är jag? Mitt namn är Björn Jönsson och jobbar på Tahoe Solutions, ni når mig via mail: bjorn.jonsson@tahoesolutions.se

Läs mer

TEKNISK SPECIFIKATION. för TIDOMAT Portal version 1.7

TEKNISK SPECIFIKATION. för TIDOMAT Portal version 1.7 för version 1.7 Innehållsförteckning Innehållsförteckning... 2 Krav för... 3 Systemskiss... 3 Systemkrav Server... 4 Operativsystem*... 4 Program i servern... 4 Databas... 5 SMTP inställningar för mail....

Läs mer

Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic

Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic Inledning Starta Microsoft Visual Studio 2005. Välj create Project Välj VB + Vindows Application och välj ett nytt

Läs mer

FactoryCast HMI. Premium & Quantum PLC. FactoryCast HMI epost-tjänst 2004-10-25

FactoryCast HMI. Premium & Quantum PLC. FactoryCast HMI epost-tjänst 2004-10-25 FactoryCast HMI Premium & Quantum PLC FactoryCast HMI epost-tjänst 2004-10-25 INNEHÅLLSFÖRTECKNING 1 EPOST-TJÄNSTEN...3 1.1 KONFIGURERING AV EPOST-TJÄNST...3 2 EPOST-SERVER...6 2.1 KONFIGURERING AV EPOST-SERVER...6

Läs mer

Systemkrav och tekniska förutsättningar

Systemkrav och tekniska förutsättningar Systemkrav och tekniska förutsättningar Hogia Webbrapporter Det här dokumentet går igenom systemkrav, frågor och hanterar teknik och säkerhet kring Hogia Webbrapporter, vilket bl a innefattar allt ifrån

Läs mer

Creo Customization. Lars Björs 2014-10-16

Creo Customization. Lars Björs 2014-10-16 Creo Customization Lars Björs 2014-10-16 Norra Europas största partner och återförsäljare av PTC relaterad programvara (Windchill, Creo, Arbortext, MathCad, Relex) 70 anställda Egen utvecklingsavdelning

Läs mer

Elisabet Stöök Konsult SAS Institute AB Copyright 2003, SAS Institute Inc. All rights reserved.

Elisabet Stöök Konsult SAS Institute AB Copyright 2003, SAS Institute Inc. All rights reserved. Administrera din SAS miljö med SAS Metadata Server och SAS Management Console. Elisabet Stöök Konsult SAS Institute AB Copyright 2003, SAS Institute Inc. All rights reserved. SAS Intelligence Value Chain

Läs mer

Objektorientering. Objekt och metoder. Objektorientering. Viktiga begrepp. Klass. Objekt. Deklarativ programmering

Objektorientering. Objekt och metoder. Objektorientering. Viktiga begrepp. Klass. Objekt. Deklarativ programmering och metoder Introduktion till objektorienterad programmering Markus Saers markus.saers@lingfil.uu.se orientering Deklarativ programmering Beskriver förutsättningarna för något Prolog Imperativ programmering

Läs mer

E-POSTINSTÄLLNINGAR I E-POSTPROGRAMMET

E-POSTINSTÄLLNINGAR I E-POSTPROGRAMMET E-POSTINSTÄLLNINGAR I E-POSTPROGRAMMET För att kunna läsa sin e-post i sin dator, utan att logga in i webbmailen, måste man göra ett par inställningar i e-postprogrammet i datorn. Det finns många typer

Läs mer

emopluppen Användning av "Ant" Niklas Backlund Version: 1.4 ( 2002/04/26 07:27:52 UTC)

emopluppen Användning av Ant Niklas Backlund Version: 1.4 ( 2002/04/26 07:27:52 UTC) emopluppen Användning av "Ant" Version: 1.4 ( 2002/04/26 07:27:52 UTC) Niklas Backlund Sammanfattning Det här dokumentet handlar om programmet Ant, som är en byggmiljö för programutvecklingsprojekt. Dess

Läs mer

Guide för konfigurering av Office 365 konton

Guide för konfigurering av Office 365 konton Guide för konfigurering av Office 365 konton Office 365 Kiosk konto Sid 1, Konfigurera Kiosk konto i Outlook 2007 Sid 2, Konfigurera Kiosk konto i Outlook 2010 Sid 3, Konfigurera kiosk/pop konto på Mac

Läs mer

Övning 1. Datateknik A, Java I, 5 poäng. Att ladda hem och installera Java Att skriva ditt första Javaprogram Att kompilera och exekvera ditt program

Övning 1. Datateknik A, Java I, 5 poäng. Att ladda hem och installera Java Att skriva ditt första Javaprogram Att kompilera och exekvera ditt program Datateknik A, Syfte: Att ladda hem och installera Java Att skriva ditt första Javaprogram Att kompilera och exekvera ditt program Att läsa: Lektion 1 Antal uppgifter: 3 Inlämning: Sker via inlämningsuppgifter

Läs mer

Nya webbservern Dvwebb.mah.se

Nya webbservern Dvwebb.mah.se Nya webbservern Dvwebb.mah.se Bakgrund: BIT (Bibliotek och IT) beslutar att ta ner Novell systemet 28/3 som är en katalogtjänst som styr bland annat alla studenter s.k. hemkataloger på Malmö högskola såväl

Läs mer

Introduktion till MySQL

Introduktion till MySQL Introduktion till MySQL Vad är MySQL? MySQL är ett programmerings- och frågespråk för databaser. Med programmeringsspråk menas att du kan skapa och administrera databaser med hjälp av MySQL, och med frågespråk

Läs mer

(Man brukar säga att) Java är... Denna föreläsning. Kompilering av Java. Historik: Java. enkelt. baserat på C/C++ Allmänt om Java

(Man brukar säga att) Java är... Denna föreläsning. Kompilering av Java. Historik: Java. enkelt. baserat på C/C++ Allmänt om Java (Man brukar säga att) Java är... Denna föreläsning Allmänt om Java Javas datatyper, arrayer, referenssemantik Klasser Strängar enkelt baserat på C/C++ objekt-orienterat från början dynamiskt utbyggbart

Läs mer

KTH Programutvecklingsprojekt med mjukvarukonstruktion 2D1362. Projektpresentation

KTH Programutvecklingsprojekt med mjukvarukonstruktion 2D1362. Projektpresentation KTH Programutvecklingsprojekt med mjukvarukonstruktion 2D1362 Projektpresentation Fakturasystem Total Office Mobile Systems http://www.nada.kth.se/projects/prom04/fakturasystem/ Uppdragsgivare: Örjan Melin

Läs mer

Datakommunika,on på Internet

Datakommunika,on på Internet Webbteknik Datakommunika,on på Internet Rune Körnefors Medieteknik 1 2015 Rune Körnefors rune.kornefors@lnu.se Internet Inter- = [prefix] mellan, sinsemellan, ömsesidig Interconnect = sammanlänka Net =

Läs mer

ENTRÉ DOKUMENTHANTERING...

ENTRÉ DOKUMENTHANTERING... Entré Innehåll ENTRÉ DOKUMENTHANTERING... - 2 - Starta Dokumenthantering... - 3 - Lägga till dokument via frågeguide... - 4 - Frågeguiden... - 5 - Lägga till dokument manuellt... - 7 - Lägg till fil...

Läs mer

Web Services. Cognitude 1

Web Services. Cognitude 1 Web Services 1 Web Services Hur ska tillämpningar integreras? Hur ska tillämpningar integreras (via nätet ) för att erbjuda tjänster åtkomliga på nätet? SVAR: Web Services (Enligt Microsoft, Sun, IBM etc.)

Läs mer

Tentamen ID1004 Objektorienterad programmering October 29, 2013

Tentamen ID1004 Objektorienterad programmering October 29, 2013 Tentamen för ID1004 Objektorienterad programmering (vilande kurs), 29 oktober 2013, 9-13 Denna tentamen examinerar 3.5 högskolepoäng av kursen. Inga hjälpmedel är tillåtna. Tentamen består av tre sektioner.

Läs mer