Autor Thema: API: generelle Frage  (Gelesen 1939 mal)

Offline Andreas Bauer

  • Frischling
  • *
  • Beiträge: 16
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
API: generelle Frage
« am: 20.12.04 - 19:50:04 »
Hallo zusammen,

ich habe mal eine generelle Frage zu API, denn das sind spanische Dörfer für mich.

Ich habe dies bisher immer blind eingesetzt, daher ein paar Fragen hierzu.

Z.B. wird hier ja die WinAPI genutzt afaik (Antwort Nr. 3): http://www.atnotes.de/index.php?topic=18630.0

Wo kann ich denn sehen, welche Möglichkeiten mir hier überhaupt zur Verfügung stehen?

Von IBM gibt's ja das C API Toolkit: Link

Allerdings sind dort nur C - Befehle enthalten, was mich nicht wirklich weiterbringt.

Ich bin über jede Info dankbar.

Grüße,
Andreas

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re: API: generelle Frage
« Antwort #1 am: 20.12.04 - 19:58:42 »
Das C Api Toolkit oder die C++ Api ( eine wrapper class für die C Api ) wirst du in der Regel nur dann brauchen, wenn du Client/Server Addins in C schreiben willst/musst(möchtest.

Wenn das aber spanish Dörfer sind, dann musst du dich wohl oder übel mit den Grundlagen von C vertraut machen.

Was die Einbindung in Lotus Script angeht, gibt die Designer Hilfe einen ersten Ansatz.
Als nächstes kannst du dann in Foren zu Visual Basic so einiges finden; allerdings dürften hier im Forum schon fast alle für LN brauchbaren Adaptionen der Note oder Windows API zu finden sein.

Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Andreas Bauer

  • Frischling
  • *
  • Beiträge: 16
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: API: generelle Frage
« Antwort #2 am: 20.12.04 - 20:05:40 »
Hallo Ulrich,

danke schonmal !

Gibt es irgendwo weiterführende Infos zu den ganzen APIs bezüglich Einbindung in Lotus Script?

Konkret würde mich interessieren:
 - warum werden Variablen z.B. mit "hwndOwner" bezeichnet und nicht als lngOwner (weil Datentyp Long?)
 - gibt es irgendwo eine Übersicht der Notes Libraries und den enthaltenen Functions?
 - gibt es irgendwo eine Übersicht der Windows Libraries und den enthaltenen Functions?
 - was passiert, wenn ich Win API nutze, und der Client ein Mac ist? Tritt der Fehler erst dann auf in der Sub/Function an der ersten enstprechenden Stelle, oder bereits beim Laden der ScriptLibrary?

Andreas

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re: API: generelle Frage
« Antwort #3 am: 20.12.04 - 20:23:20 »
Das Buch kostet zwar, aber es beantwortet genau Deine Fragen bezüglich Notes-API:

www.ls2capi.com


Vermutlich das einzige Buch, das wirklich so geziehlt genau auf die Nutzung in LotusScript abziehlt.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: API: generelle Frage
« Antwort #4 am: 20.12.04 - 20:24:07 »
Hallo, Andreas,

wenn Dich die C-API-Doku von Notes nicht weiterbringt, stehst Du auf völlig verlorenem Posten. Ohne dem Know-How hierzu kommst Du nämlich sonst kein Stückchen weiter.

Zu Deinen Fragen:
- Die Benennung der Parameter ist wahlfrei. Das haben sich die jeweiligen Programmierer (bzw. Class-Projektanten) ausgedacht. Sicher steckt ein Sinn dahinter, aber das Wissen darüber hilft Dir auch nicht weiter.
- Die "Übersicht der Notes Libraries" hast Du ja schon gefunden.
- Hinsichtlich der WinAPI ist das Netz voll von guten Seiten. Einfach googlen. Ich weiss nicht, ob meine Favorites der Weisheit letzter Schluss sind, deswegen poste ich hier aus der riesigen Anzahl von Angeboten nix.
- Es scheppert schon beim Laden der Lib.

Buchempfehlung tum Thema:
Normunds Kalbernzins LS to Lotus C API Programming Guide
Ich wüsste nix besseres - einfach Klasse, das Teil. Er erklärt dort auch gut verständlich die minimalen C-Kenntnisse, die man für dieserart APIs benötigt.

HTH,
Bernhard

PS: Dringender Tip, Andreas: Mach Dich unbedingt schlau über die ganzen Risiken und Nebenwirkungen eines Einsatzes von APIs. Nicht nur die OS-Version, sondern auch das jeweilige Release spielen oft eine ganz wichtige Rolle. Und wenn Dir da was schief geht, kriegst Du keine Fehlermeldung mehr ... Auch totaler Datenverlust ist durch unsachgemässen Einsatz ratzfatz provoziert.

Offline Andreas Bauer

  • Frischling
  • *
  • Beiträge: 16
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: API: generelle Frage
« Antwort #5 am: 20.12.04 - 20:33:33 »
Vielen dank, Semaphoros und Bernhard.
Ich denke ich werde mir das Buch besorgen  :)

Letzte Frage:

- Es scheppert schon beim Laden der Lib.
Gibt es eine Möglichkeit das zu vermeiden? Mir fällt es schwer dies zu testen mangels nicht vorhandenem Mac....

Ich stelle mir vor eine Meldung auszugeben, wenn die Workstation <> Win32 ist.
Über Notessession.Platform kommt man ja an die OS-Version.
Aber wenn es bereits beim laden scheppert, ist das wohl zu früh.

Andreas

Offline Andreas Bauer

  • Frischling
  • *
  • Beiträge: 16
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: API: generelle Frage
« Antwort #6 am: 20.12.04 - 20:40:08 »
Noch was  ;)

- Die "Übersicht der Notes Libraries" hast Du ja schon gefunden.

Leider nein, Bernhard, aber vielleicht kannst Du mir kurz helfen.

Z.B. würde ich gerne wissen, wo
Code
Declare Function NSFDbOpen Lib APIModule Alias "NSFDbOpen" ( Byval PathName As String, DbHandle As Long) As Integer
Declare Function NSFDbClose Lib APIModule Alias "NSFDbClose" ( Byval DbHandle As Long) As Integer
dokumentiert ist.

Z.B. eine Suche nach "NSFDbOpen" in der Designerhilfe liefert mir nämlich keine Treffer.

Andreas

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re: API: generelle Frage
« Antwort #7 am: 20.12.04 - 20:48:35 »
Das Buch von Normunds erklärt das eigentlich alles. Auch wie man mit Mac umgehen muss, steht dort drin.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: API: generelle Frage
« Antwort #8 am: 20.12.04 - 20:52:18 »
Zu Deinen Fragen, Andreas:
Die Notes / Domino-C-API-Doku hast Du bereits in Deinem Ausgangsposting als Link veröffentlicht. Das isses !
In der Designer-Help findest Du (aus gutem Grunde) kaum Infos zur C-API. Das ist einfach nicht der Platz dafür.

Wegen der plattformabhängigen Codierung: Siehe Normunds Buch ab Seite 118.

Und nochmals: Suche zuerst immer Wege, ohne API auszukommen. Dir können sonst wirklich schlimme Dinge passieren, und der Lernaufwand ist beachtlich.

Mal doch mal ein Beispiel auf, wo Du mit "Bordmitteln" nicht weiterkommst. Auch wenn Du das Ganze "nur" interessehalber betreibst: Liest Normunds' Buch - es wirklich hervorragend.

Bernhard

Offline animate

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.540
  • Uh, I'm just gonna go find a cash machine.
    • LA2
Re: API: generelle Frage
« Antwort #9 am: 21.12.04 - 08:15:43 »
bitte löschen. ich kanns nicht
« Letzte Änderung: 21.12.04 - 08:25:43 von Thomas Völk »
Thomas

Fortunately, I'm adhering to a pretty strict, uh, drug, uh, regimen to keep my mind, you know, uh, limber.

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re: API: generelle Frage
« Antwort #10 am: 21.12.04 - 08:24:24 »
Thomas Völk schrieb in seinem Beitrag:
Zitat
oder dir den Visual Basic Programmer's Guide to the Win32 API von Dan Appleman reinziehen

... den er dann recht frustriert schnell wieder in die Ecke legt, weil der größte Teil gar nicht in Notes verwendet werden kann ... und man recht schnell auch vom Umfang des Werkes erschlagen wird...
« Letzte Änderung: 21.12.04 - 08:32:25 von eknori »
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline animate

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.540
  • Uh, I'm just gonna go find a cash machine.
    • LA2
Re: API: generelle Frage
« Antwort #11 am: 21.12.04 - 08:27:57 »
oh mist, ich hab meinen Beitrag, aus dem eknoris Zitat stammt, gerade nach sorgfältigerem Studium der Beiträge eliminiert.

den Apppleman konnte ich eigentlich öfter mal einsetzen. Ich war nie frustriert. Allerdings habe ich den auch für VB mitverwendet.
Thomas

Fortunately, I'm adhering to a pretty strict, uh, drug, uh, regimen to keep my mind, you know, uh, limber.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz