Startseite > LotusScript > Kompilieren Lotus Notes Agents Wenn Script-Bibliotheken ändern.

Recompile Lotus Notes Agents Wenn Script-Bibliotheken ändern.

Wenn Sie Änderungen an einem Skript-Bibliothek in Lotus Notes zu machen, ist es manchmal schwierig zu wissen, wenn Sie alle Hinweise Agenten, dass die Skript-Bibliothek aufrufen und wenn Sie nicht neu kompilieren müssen. Hier sind einige Beobachtungen, die ich habe made.If Sie die Signatur einer Funktion, Sub oder Klassenmethode, müssen Sie neu kompilieren für nicht-Fehler beim Einsatz.

Wenn Notes-Agent verwendet einen konstanten Wert von einer Script-Bibliothek und eine Konstante in einer Script-Bibliothek wird geändert:

* Wenn der Notes-Agent im Debug-Modus ausgeführt wird, wird die neue Konstante verwendet
* Wenn der Notes-Agent manuell oder Lauf geplant, die alte Konstante verwendet wird (auch wenn Sie lief es gerade in Debug-Modus und sah die neue Variable)
* Wenn der Notes-Agent ist geöffnet, gespeichert mit CTRL-S (ohne Änderungen mit dem Agenten gemacht worden), und geschlossen, wird die alte konstant weiter verwendet
* Wenn der Notes-Agenten wird geöffnet, geändert und gespeichert mit CTRL-S, ist die neue Konstante verwendet
* Wenn der Notes-Agenten neu kompiliert wird mit Hilfe der API ist die neue Konstante verwendet

Ich denke, der Grund, warum die alten Konstanten stick around ist, weil, wenn die LotusScript erstellt wird, enthält die LotusScript-Bytecode übersetzt den Wert des konstanten, nicht einen Verweis auf die Konstante. Das ist eine gute Programmierung bis hin zu Bytecode-Optimierung geht, aber schlecht, wenn man den ständigen Wechsel in der Skript-Bibliothek, da der Agent nie blickt zurück auf die Skript-Bibliothek, um den Wert der ständigen Kontrolle.

Denn ich bin nicht der einzige Verweis auf die Bytes der Unterzeichnung, der Funktion und Inhalte, die sie wollen, einschließlich Ihrer eigenen, wie Tauchen und in der Bibliothek von Funktionen und Code-Änderungen so weit Sorge Tauchen Schönheit.
Mit anderen Worten, wenn ein Agent auf eine Funktion oder eine Sub aus einer Script-Bibliothek laufen will, es läuft immer es aus der LotusScript-Bibliothek. Also, wenn Sie den Inhalt einer Funktion oder Sub in einer Bibliothek (und verlassen Sie die Unterschrift allein) zu ändern und nicht re-save Ihr Agent, wird Ihr Code-Änderungen noch zu erkennen.

Betrachtet 5188 mal von 1428 Zuschauern

  1. Noch keine Kommentare.
  1. Bisher keine Trackbacks.