bl.OGware

infrequent grumblings of a software engineer and then some… (also some Delphi programming)

Archive for June, 2009

Discount coupon for Add-in Express

Posted by tier777 on 2009-06-10

This was originally only intended for the attendees of my talk at the Delphi-Tage, but I now got permission to post it here on the blog, especially as the code had only arrived in my Inbox a mere 30 minutes after I had already left for Hamburg and so I wasn’t able to show it during the talk at all (it will be included in the slides that should be made available for the participants within the week via the delphi-tage.de page, though):

Using the code ADX-VCLSTD30 you can order Add-in Express 2009 for Office and VCL Standard at a 30% discount. The code is valid until 10 July 2009. Note that you can upgrade from this discounted Standard version to Professional or Premium for the respective price difference between Standard and Professional or Standard and Premium. Also note that even if you make use of the discount you will still have an unconditional 30 day money-back guarantee.

For the differences between Standard, Pro and Premium please refer to the Feature Matrix.

If 30% on the Standard version is not enough for you, I’d like to direct your eyes in the general direction of their discounts and special offers page. There should be something for anyone there, really.

And so the circle closes… 😉 a similar offering was also how I first heard about Add-in-Express almost exactly two years ago.

In case you’re wondering: Add-in Express is a VCL framework for true RAD-development of all kinds of Office addins (besides advanced Outlook addins you can also create addins for all other Office products as well as SmartTags and Excel RTD Servers) with special focus on seamless integration with the Office GUI. This allows you to really concentrate on the essential functionality of your addin right from the get-go rather than wasting days or weeks on tasks like trying to get a simple commandbar button to work across all Office versions.

P.S. : As I continue producing flash videos about Outlook addin-development I will eventually cover Add-in Express as well. In the meantime, you can take a look at their own Screencasts.

Advertisements

Posted in Delphi | Tagged: , , , , , | Leave a Comment »

Resources for Developing Outlook-Addins with Delphi

Posted by tier777 on 2009-06-09

[deutsche Fassung dieses Artikels: siehe voriger Eintrag]

Here’s a commented list of links that accumulated during the preparation for my talk on developing Outlook-addins with Delphi at last weekend’s Delphi-Tage event in Hamburg (also containing some information that I did not end up covering for various reasons):

Official API-References and related Information:

Source code, Tutorials and Example-Addins:

  • Extended MAPI-Headers for Delphi:
    http://dimastr.com/outspy/download/MAPI_headers.zip
    (indispensable for any kind of Extended MAPI development, also when combined with Redemption – see below)
  • BabelFish for Outlook:
    http://dimastr.com/babelfish/
    (the required target WebService is no longer online but the source code of this addin works very well as a starting point for new addins)
  • Trust Filter for MS Outlook:
    http://www.benziegler.com/TrustFilter/
    (a non-trivial Outlook-Addin with freely available source code, written in Delphi)
  • OutlookCode.com – Developer Learning Center for Microsoft Outlook
    http://outlookcode.com
    (Heaps of examples, articles, tutorials, links, etc. – mostly VB(A/S) or C# rather than Delphi, though)
  • Slipstick.com – Outlook & Exchange Solutions Center
    http://slipstick.com
    (the definitive information portal for all things Outlook and Exchange)

Products presented or used:

Miscellaneous:

(Attention! Time for a quick commercial break. 😉 )

  • Lucatec GmbH:
    http://www.lucatec.de
    (my “hand that feeds”, without whom this talk wouldn’t have happened)
  • Lucatec® Mask:
    http://lucatec.net/mask/
    (our addin for automating several tasks related to the use of shared mailboxes or Public Folders in a team, Shareware)

(end of commercial break)

  • techvanguards.com
    http://www.techvanguards.com/
    (extensive articles and tutorials all about COM programming with Delphi and C++-Builder by Binh Ly – a real eye-opener for anyone that has been struggling with this topic so far)
  • You can use the following .reg-file to perform registration and unregistration of COM-DLLs directly from the Explorer context menu:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\dllfile\shell]
@="openas"

[HKEY_CLASSES_ROOT\dllfile\shell\Register]

[HKEY_CLASSES_ROOT\dllfile\shell\Register\command]
@="regsvr32.exe \"%1\""

[HKEY_CLASSES_ROOT\dllfile\shell\Unregister]

[HKEY_CLASSES_ROOT\dllfile\shell\Unregister\command]
@="regsvr32.exe /u \"%1\""

Posted in Delphi, Outlook | Tagged: , , , | Leave a Comment »

Ressourcen zum Delphi-Tage 2009 Vortrag “Entwickeln von Addins für Microsoft Outlook mit Delphi”

Posted by tier777 on 2009-06-09

de [please see next post for an English version of this post]

Bevor ich die Slides meines Vortrages an Daniel zur ZIPpung weitergebe, hier schon einmal meine kommentierte Liste aller Links, die ich während der Vorbereitung zusammengetragen habe (enthält auch Informationen zu  einigen aus Zeit- und anderen Gründen leider entfallenen Themen):

Offizielle API-Referenzen und Infoquellen:

Quellcode, Tutorials und Beispiel-Addins:

  • Extended MAPI-Header für Delphi:
    http://dimastr.com/outspy/download/MAPI_headers.zip
    (unverzichtbar für jede Art von Extended MAPI-Programmierung, auch im Zusammenspiel mit Redemption – siehe weiter unten)
  • BabelFish for Outlook:
    http://dimastr.com/babelfish/
    (der angesteuerte WebService ist leider nicht mehr im Betrieb, aber der Quellcode dieses Addins ist ideal als Ausgangspunkt für eigene Addins geeignet)
  • Trust Filter for MS Outlook:
    http://www.benziegler.com/TrustFilter/
    (nicht-triviales, in Delphi geschriebenes Outlook-Addin mit Quellcode)
  • OutlookCode.com – Developer Learning Center for Microsoft Outlook
    http://outlookcode.com
    (Unmengen von Beispielen, Erläuterungen, Tutorials, Links, etc. – meist leider eher VB(A/S) oder C# als Delphi)
  • Slipstick.com – Outlook & Exchange Solutions Center
    http://slipstick.com
    (das Informationsportal schlechthin für alles, was mit Outlook und Exchange zu tun hat)

Vorgestellte bzw. verwendete Produkte und Tools:

Verschiedenes:

(Achtung! Kurze Werbeunterbrechung. 😉 )

  • Lucatec GmbH:
    http://www.lucatec.de
    (mein Brötchengeber, ohne den mein Vortrag gar nicht möglich gewesen wäre)
  • Lucatec® Mask:
    http://lucatec.net/mask/
    (mein “Baby” 😉 : ein Addin zum Automatisieren verschiedenster Arbeitsschritte bei der (Team-)Arbeit mit gemeinsam genutzten Postfächern oder Öffentlichen Ordnern, Shareware)

(Werbung Ende)

  • techvanguards.com
    http://www.techvanguards.com/
    (Ausführliche Artikel und Tutorials rund ums Thema COM mit Delphi und C++-Builder von Binh Ly – ein echter Augenöffner, für alle, die sich bisher mit dem Thema nur gequält haben)
  • Die folgende einfache .reg-Datei könnt Ihr verwenden, um die (De-)Registrierung von DLLs einfach über das Explorer-Kontextmenü durchzuführen:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\dllfile\shell]
@="openas"

[HKEY_CLASSES_ROOT\dllfile\shell\Register]

[HKEY_CLASSES_ROOT\dllfile\shell\Register\command]
@="regsvr32.exe \"%1\""

[HKEY_CLASSES_ROOT\dllfile\shell\Unregister]

[HKEY_CLASSES_ROOT\dllfile\shell\Unregister\command]
@="regsvr32.exe /u \"%1\""

Posted in Delphi, Outlook | Tagged: , , , , | 1 Comment »

Delphi Tage 2009 – Recap

Posted by tier777 on 2009-06-07

[deutsche Fassung dieses Artikels: siehe voriger Eintrag]

So, I am back from this year’s Delphi-Tage (“Delphi Days”) in Hamburg and had a little time to let the impressions sink in a little. As has been mentioned by many participants, the uniqueness of the venue will be hard to top for future events (but then, why should it have to? – after all, it’s the overall-experience, the people, the sessions and of course Delphi that should be the main attraction, shouldn’t it?)

Der Veranstaltungsort - Die Cap San Diego

This year's venue - The Cap San Diego

Publikum bei David's Keynote

Audience at David I's Keynote

(more pictures can be found in the coresponding  album on the DelphiPraxis forum, as well as on the Delphi-Treff site)

A big praise to Daniel Wolf for organizing the “pre-con” barbecue at “cult” football club FC St. Pauli’s where we met in a nice setting with great food and a couple of nice cold beers where you could also chat pleasantly about non-programming, non-Delphi-related topics for a change, all in the middle of the vibrant (German part of the) Delphi community.

The main event started on Saturday morning. Attendance was pretty high (over 250 people, including speakers and exhibitors, if I overheard that correctly). I was especially pleased to see so many “out” themselves as first-timers during the hand-raising section at the conclusion of the event. And the average age of the audience was also way lower than I have seen at similar events in the past which can only be a good sign, right?

David I’s keynote offered little new to anyone who had been following the coverage of last month’s  Delphi Live! conference in San Jose. It’s nevertheless always a joy to see and hear David talking. You just totally get that there is someone who’s truly got his heart in what he’s saying.

After a quick break started the first round of sessions, whereas I myself unfortunately wasn’t able to see a lot of it as I had to leave during the coffee break to find a less pricey parking space for my car and only returned (quite out of breath and sweating) for the second half of Jeroen Pluimers‘ very hands-on talk about IDE-addins and other useful tips for increasing developer productivity. Though, as at that point the room was so full that I had to stand in the doorway to the adjoining second session room, where Bernd Ott was doing an equally interesting talk about Subversion I was only able to watch and listen with half an ear and eye.

Bernd Ua - Softwaretests

Bernd Ua - Softwaretests

After that I went to see Bernd Ua’s talk about software testing and DUnit which I watched from quite an unusual viewpoint (see picture to the left). In the meantime the time for my own talk was rapidly approaching and as this was going to be the first of its kind since almost exactly 9 years to the day (minus a month), my tension was rising considerably. As a result I could unfortunately only watch the first half of Daniel Wischnewski’s entertaining talk about the  Windows 7 Taskbar as at that point I had to step out for a quick breath of fresh air.

My own talk then was a bit of a mixed bag: While I did manage to shed most of the nervousness and was able to answer all questions from the audience, I feel that in hindsight I probably made some less than ideal decisions about weighting the individual parts of the talk in an effort to get everything in there that I had announced I would cover. Sadly, time ran out on me even before I got to the concluding segment about Extended MAPI and Redemption so I could only hasten through the slides about those topics rather than actually show some practical examples.

Well, one should learn from one’s mistakes. I will try to cover the bits that got a bit of a short end here on the blog in the form of more videos and also to do better at the next live talk. I hope everyone was still able to take away something interesting for him or herself. Please feel free to post any unasked questions here on the comment thread.

One note to the organization team regarding breaks: Please make sure that next time there will always be at least 10 minutes between sessions. That way people will actually have some time to get from one session to the next if it is in a different room than the previous one and also to step out to catch some fresh air or for taking last break’s coffee to the pottery department and so on. Furthermore, as a speaker you typically also need a couple of moments before you have got all the wiring in place and your notebook booted up properly. As most speakers (including my predecessor and me) made use of their time slot to the very last second that set-up time had to count against the regular session time while all the while the audience was already champing at the bit. 😉

The day’s finale in the Gröninger Brauhaus was quite pleasant and fun. In my mind the pub/restaurant visit at the end has really become a stock item of the Delphi Tage events in its own right.

The first thing I found in my inbox when I turned on my computer for the first time since my return was a belated (actually, it had arrived a mere 30 minutes after I had left for Hamburg) email from the Add-in-Express team, containing a 30% rebate coupon for the attendees of my talk. I will make sure to include that in my slides before I send them off. Speaking of which, the slides of the entire event (including mine) will shortly be made available  via the DelphiPraxis forum as one big downloadable ZIP-archive. I will post the link here once it is available.

Posted in Delphi | Tagged: , , | Leave a Comment »

Delphi Tage 2009 – Rückblick

Posted by tier777 on 2009-06-07

de

[please see next post for an English version of this article]

So, nun bin auch ich zurück von den diesjährigen Delphi-Tagen in Hamburg und hatte ein wenig Zeit, die Eindrücke auf mich wirken zu lassen. Wie schon vielfach erwähnt, wird sich die Ausgefallenheit der Location wohl nur noch schwer übertreffen lassen (muss ja aber auch gar nicht – schließlich soll ja das Gesamterlebnis, die Leute, die Vorträge und nicht zuletzt Delphi im Vordergrund stehen).

Der Veranstaltungsort - Die Cap San Diego

Der Veranstaltungsort - Die Cap San Diego

Publikum bei David's Keynote

Publikum bei David's Keynote

(weitere Bilder gibt es übrigens im entsprechenden Album der DelphiPraxis, sowie beim Delphi-Treff)

Großes Lob an Daniel auch für die Organisation des “pre-Con” Grillabends im Clubheim des FC St. Pauli wo man sich in netter Atmosphäre, mit leckerem Essen und einem schönen kühlen hanseatischen Bier unter die Delphi-Community mischen konnte, und dabei auch mal über andere Dinge, als nur Programmieren und Delphi reden konnte.

Weiter ging es am Samstag Morgen. Die Veranstaltung war sehr gut besucht (ca. 250 Leute einschließlich Speaker und Aussteller, wenn ich Daniel richtig verstanden habe). Besonders erfreulich fand ich auch die besonders große Anzahl von Leuten, die sich bei der abschließenden “Hände-heben”-Runde als Erstbesucher “geoutet” haben. Der Altersdurchschnitt lag meinem Empfinden nach auch etwas niederiger als bei früheren Events, was ja nur ein gutes Zeichen sein kann.

Die Keynote von David I bot wenig Neues, sofern man die Berichterstattung zur Delphi Live!-Konferenz im letzten Monat verfolgt hatte. Trotzdem finde ich es immer wieder erfrischend, David reden zu hören. Man merkt einfach, dass er mit Leib und Seele bei der Sache ist.

Weiter ging es mit den ersten Runde Sessions, wobei ich davon selbst leider nicht mehr viel mitbekommen habe, da ich die Kaffeepause nutzten musste, um einen kostengünstigeren Parkplatz für meinen Smart zu suchen. Zumindest die letzte Hälfte von Jeroens Vortrag über IDE-Addins und sonstige nützliche Tipps zur Produktivitätssteigerung konnte ich noch mit halben Ohr und Auge verfolgen – leider war der Raum so voll, dass ich nur im Durchgang zum Nebenraum stehen konnte, wo Bernd Ott einen ebenfalls sehr interessanten Vortrag zum Thema Subversion hielt.

Bernd Ua - Softwaretests

Bernd Ua - Softwaretests

Danach ging es für mich ohne Pause weiter mit Bernd Uas Vortrag zu Softwaretests und DUnit, welchen ich aus ungewohnt luftiger Höhe verfolgt habe… (siehe Bild links).

In der Zwischenzeit rückte mein eigener Vortrag immer näher und da dies der erste seit fast auf den Tag genau 9 Jahren sein sollte (abzgl. einem Monat), stieg die Anspannung bei mir entsprechend. Sakuras Vortrag über die Windows 7 Taskbar konnte ich leider entsprechend auch nur zur Hälfte verfolgen, da ich erst noch ein wenig Frischluft schnappen musste.

Mein eigener Vortrag schließlich war eine gemischte Angelenheit: Zwar konnte ich meine Nervosität größtenteils noch ablegen und konnte auch alle Zwischenfragen beantworten, aber meine Entscheidungen zur Zeitaufteilung und Gewichtung  der einzelnen Vortragsteile waren, im Nachhinein betrachtet, glaube ich nicht ganz ideal und obendrein reichte die Zeit leider gar nicht mehr für den abschließenden Teil zum Thema Extended MAPI und Redemption, wodurch ich zu diesem Thema nur noch im Eiltempo die Slides durchklicken konnte, anstatt echte Praxisbeispiele zu zeigen.

Nun ja, wie sagt man: aus Fehlern lernt man. Ich werde versuchen, die zu kurz gekommenen Teile hier in Blog- und Videoform nachzureichen und es beim nächsten Live-Vortrag besser zu machen. Ich hoffe, es konnten trotzdem alle Anwesenden das eine oder andere für sich mitnehmen. Konkrete Fragen beantworte ich auch gerne hier im Kommentar-Thread.

In Sachen Pausen nochmal eine kleine Anmerkung für die Organisatoren: Bitte beim nächsten Mal auch zwischen den Vor- und Nachmittagssessions noch 10-15 Minuten Pause lassen, so dass die Teilnehmer auch Zeit haben, von einer Session zur nächsten zu laufen, nochmal (eine Stange) Frische Luft zu schnappen, die Getränke aus der letzten Pause in die Keramikabteilung zu tragen und so weiter. Außerdem braucht man ja auch als Speaker noch einen kurzen Moment, bevor man sein Notebook ordnungsgemäß verkabelt und hochgefahren hat. Da die meisten Speaker, so wie auch mein Vorredner und ich, ihre Zeit (mehr als) voll ausgenutzt haben, mussten diese Vorarbeiten dann alle schon während der eigentlichen Session-Zeit erledigt werden, während das Publikum schon mit den Füßen scharrte… 😉

Den Ausklang des Tages im Gröninger Brauhaus fand ich schließlich auch sehr amüsant und gesellig (ich sag nur: “JUUUUNGS!!!” 😉 ). Das gehört für mich mittlerweile auch einfach zu den Delphi-Tagen dazu.

Das erste, was ich schließlich heute morgen in meinem Posteingang fand, war ein 30%-Gutscheincode, welchen mir das Add-in-Express-Team etwas verspätet (um genau zu sein: 30 Minuten nach meiner Abreise am Freitag) für die Teilnehmer meines Vortrages zugesandt hatte. Ich werde diesen auf jeden Fall noch mit in die Slides einbauen, bevor ich Sie verfügbar mache.

Apropos, die Slides der gesamten Veranstaltung, einschließlich meiner, wird es in Kürze über die DelphiPraxis als großes ZIP-Archiv zum Download geben. Ich werde den entsprechenden Link dann auch noch einmal hier posten.

Posted in Delphi | Tagged: , , , | 1 Comment »

Creating Outlook-Addins with Delphi – Part 2 (Option Pages)

Posted by tier777 on 2009-06-04

Creating Outlook-addins with Delphi - Part 2

So, here’s the second example on creating Outlook-Addins with Delphi which will likely not be included in my talk at the German Delphi-Tage due to time constraints.

In this one I show how to add an option page to your addin, which is typically used for letting the user configure your addin or for displaying version and contact information.

Again, raw and unedited (I’m probably talking too fast in this one). Recorded at 1024×768 in English, 9 minutes and 28 seconds.

Enjoy.

[Part 1]

Posted in Delphi, Outlook | Tagged: , , , , , , , | Leave a Comment »

Creating Outlook-Addins with Delphi – Part 1

Posted by tier777 on 2009-06-04

Creating COM-Addins with Delphi - Part 1
I have now uploaded a screen video of the first example from my upcoming talk about creating COM-addins with Delphi at the German Delphi Tage event.

This is raw and unedited and I assume prior knowledge of some COM-basics and terminology like CoClasses, ProgIDs and type libraries and how to create and register COM-DLLs.

This was recorded at 1024×768 in English language (while the live talk will be in German) and is 7 minutes 29 seconds long.

Enjoy!

[Part 2] Option Pages

Posted in Delphi, Outlook | Tagged: , , , , , , , | 2 Comments »

Moving on…

Posted by tier777 on 2009-06-03

I have now moved this blog from LiveJournal.com to WordPress.com which offers me some more flexibility. It is however quite likely that this will also not be its final location as I intend to move on to a self-hosted WordPress installation in the short to mid term but there are a couple of things yet to sort out before I do that. In the meantime you may bookmark the following address:

https://ogware.wordpress.com

The preferred method to subscribe to the new blog is via FeedBurner from the following link:

Subscribe in a reader

Hopefully there’ll also be a slew of new content coming “really soon now” (keeping fingers crossed) as I get ready for my talk about Outlook Addin Development at the Delphi Tage event this weekend in Hamburg.

Signing out… (from LiveJournal)

Posted in Delphi, Meta | Tagged: , , , , , , | Leave a Comment »