OAuth2-Token für Google per .NET-App holen

Einer der wenigen Schritte, die wir nicht mit klassischem Visual Basic oder per VBA abgebildet haben, ist das Ermitteln eines OAuth2-Tokens für Rest-APIs wie die von Google oder anderen Anbietern. Die Aufgabe ist, mit den online einmalig ermittelten Daten Client-ID und Client-Secret ein Access-Token oder noch besser ein Refresh-Token zu holen. Das Access-Token ist in der Regel zeitlich begrenzt, das Refresh-Token ist haltbarer und ermöglicht es uns, neue Access-Token zu holen – dies übrigens mit einer reinen VB6/VBA-Prozedur. In diesem Artikel zeigen wir, wie wir eine kleine Anwendung mit Benutzeroberfläche auf Basis von WPF/VB.NET in Visual Studio erstellen. Diese soll die Eingabe von Client-ID und Client-Secret erlauben und dafür die Werte eines Refresh- und eines Access-Tokens zurückliefern.

Weiterlesen

JSON-Dokumente per Objektmodell zusammenstellen

.NET bietet sehr viele Steuer-elemente. Viel mehr als beispielsweise Microsoft Access. Und auch wenn man unter Access mit den eingebauten Steuerelementen die meisten Aufgaben im Bereich einer Datenbanksoftware erledigen kann, wünschen sich viele Entwickler, auch einmal andere Steuer-elemente nutzen zu können. Wir untersuchen in diesem Artikel, ob und wie wir .NET-Steuerelemente unter Access einbinden und in Formularen anzeigen können.

Weiterlesen

Anwendungsdaten in der Registry

Wenn man es gewohnt ist, mit Access zu arbeiten, liegt es nahe, Anwendungsdaten wie Optionen et cetera in einer Tabelle der Datenbankdatei zu speichern. Unter Excel, Word, Outlook oder auch für twinBASIC-Anwendungen ist das nicht so einfach. Wir könnten zwar eine Datenbank zu diesem Zweck heranziehen, aber je nach Anwendungsfall gibt es praktischere Lösungen – zum Beispiel Textdateien, XML-Dateien oder auch die Registry. Letztere schauen wir uns in diesem Artikel an. Wie können wir dort Einstellungen sichern und wieder abrufen? Wo in der Registry landen diese dann? Können wir überhaupt per VB, VBA und twinBASIC darauf zugreifen? All dies klären wir auf den folgenden Seiten.

Weiterlesen

Google Calendar per Rest-API programmieren

Google-Kalender sind praktisch: Sie sind von überall erreichbar, können mit endlos vielen Schnittstellen und Diensten verbunden werden und bieten weitere Vorteile. Noch schöner wäre es natürlich, wenn wir auch per VBA auf diese Kalender zugreifen könnten. Die Vorbereitungen haben wir bereits in zwei weiteren Artikeln erledigt – damit haben wir eine App bei Google angelegt und eine COM-DLL programmiert, mit der wir ein Token für die Authentifizierung bei Google generieren können. Damit folgt nun die Kür: Wir erzeugen VBA-Prozeduren, um auf die verschiedenen Informationen der Google Calendar API zuzugreifen. Dazu gehören Kalender, Termine und vieles mehr. Welche Möglichkeiten sich zum Lesen, Schreiben, Ändern und Löschen von Terminen bieten, zeigen wir auf den folgenden Seiten.

Weiterlesen

Google-Token per DLL holen

Wenn wir Daten eines Google-Kontos wie beispielsweise Google Calendar programmieren wollen, um diese abzurufen oder zu bearbeiten, benötigen wir verschiedene Dinge. Das erste ist eine Anwendung, die wir wie im Artikel “Google Calendar programmieren: Vorbereitungen” erläutern. Das erste Resultat ist die Definition einer Anwendung. Das zweite, wichtige Ergebnis sind zwei für den Zugang notwendige Daten, nämlich ClientID und ClientSecret. Mit diesen können wir dann online ein OAuth2-Token holen, das wir wiederum für den Zugriff auf die Rest-API von Google benötigen. Im vorliegenden Artikel zeigen wir, wie man ClientID und ClientSecret nutzt, um das begehrte Token auszulesen. Dazu erstellen wir eine COM-DLL, die wir von Office-Anwendungen, VB6 oder twinBASIC aus nutzen können, um über die Rest-API von Google beispielsweise auf Kalenderdaten zugreifen zu können.

Weiterlesen

Google Calendar programmieren – Vorbereitungen

Einer der kompliziertesten Vorgänge beim Zugriff auf Rest APIs und ähnliche Dienste ist das Ermitteln des für die Authentifizierung notwendigen Tokens. Bevor das überhaupt möglich ist, müssen wir jedoch eine App bei Google anlegen, die uns den Zugriff im Kontext des jeweiligen Benutzers erlaubt. Das einfache Anlegen einer App reicht dazu nicht aus – für das Abfragen des zum Anmelden notwendigen Tokens benötigen wir zwei Daten namens ClientID und ClientSecret. Wie wir das alles organisieren, zeigen wir im vorliegenden Artikel.Voraussetzung ist, dass bereits ein Google-Konto vorhanden ist, mit dem wir die App anlegen können. In weiteren Artikeln zeigen wir dann, wie wir ClientID und ClientSecret für die Abfrage des Tokens nutzen können wie wir damit schließlich auf die Rest-API von Google zugreifen können, um Daten des Google Calendars zu lesen, zu erstellen, zu bearbeiten und zu löschen.

Weiterlesen

twinBASIC: Ereigniseigenschaften von Fenstern

Im Artikel twinBASIC: Forms öffnen, schließen und mehr (www.vbentwickler.de/389) haben wir bereits gezeigt, wie wir Fenster beziehungsweise Form-Elemente mit twinBASIC-Befehlen öffnen und schließen können und welche Varianten es dabei gibt. Über ein wichtiges Feature von Form-Elementen haben wir dabei noch nicht gesprochen: Die sogenannten Ereigniseigenschaften. Für diese können wir Prozeduren hinterlegen, die beim Auslösen bestimmter Ereignisse des Fensters ausgelöst werden – beispielsweise beim Öffnen, Schließen, Aktivieren, Deaktivieren oder auch beim Ändern der Größe oder der Position eines Fensters. Und auch wenn der Benutzer das Fenster an einer Stelle anklickt, die keine Steuerelemente enthält, wird ein Ereignis ausgelöst, auf das wir reagieren können. Wie wir solche Ereigniseigenschaften nutzen können und wir Du diese anlegst, zeigen wir in diesem Artikel.

Weiterlesen

twinBASIC: Daten von Form zu Form

Wenn man mit SDI-Forms arbeiten, also mit solchen Formularen, die als einzelne Fenster geöffnet werden, möchte man manchmal eine der folgenden beiden Aufgaben erledigen – oder auch beide: Das aufrufende Formular soll Daten an das aufgerufene Formular übergeben, beispielsweise um den Primärschlüssel eines im Detailformular anzuzeigenden Datensatzes zu übergeben. Oder man möchte ein Formular zum Abfragen von Daten öffnen und diese dann vom aufrufenden Formular aus aufrufen. Wie beides gelingt und welche unterschiedlichen Wege es dazu gibt, schauen wir uns in diesem Artikel an. Außerdem betrachten wir, welche Arten von Daten man grundsätzlich übertragen können sollte.

Weiterlesen

twinBASIC: Überblick der Controls und Eigenschaften

twinBASIC bietet genau wie Visual Basic 6 einige Steuerelemente an – neben den vielfach verwendete Elementen wie Button, TextBox und Label haben wir die Auswahl zwischen vielen weiteren Steuerelementen, mit denen sich die wesentlichen Anforderungen an Desktop-Anwendungen umsetzen lassen. In diesem Artikel schauen wir uns die Steuerelemente einmal im Überblick an und betrachten einige der Eigenschaften, welche die meisten Steuerelemente gemeinsam haben. In weiteren Artikeln gehen wir dann im Detail auf die einzelnen Steuerelemente ein und zeigen, wie wir diese programmieren und nutzen können.

Weiterlesen

twinBASIC: Menüs erstellen

Während man sich beim Programmieren von Office-Anwendungen wie Word, Excel, Outlook oder Access mit XML-Definitionen für das Ribbon beschäftigen muss, kann man unter twinBASIC zumindest für die Fenstermenüs auf eine einfache und praktische Benutzeroberfläche zurückgreifen. Okay, für Kontextmenüs ist dann doch wieder VB-Code gefragt, aber das ist auch in den meisten Office-Anwendungen noch die gängige Vorgehensweise (nicht in Outlook, dort sind die Kontextmenüs bereits in die Ribbondefinition integriert). In diesem Artikel schauen wir uns erst einmal die Möglichkeiten an, twinBASIC-Anwendungen über die Benutzeroberfläche mit Menüs auszustatten und ihre Eigenschaften per Code anzupassen.

Weiterlesen