Autor Thema: String "vergisst" Zeichen in LotusScript  (Gelesen 15420 mal)

Offline mezz

  • Junior Mitglied
  • **
  • Beiträge: 69
Re: String "vergisst" Zeichen in LotusScript
« Antwort #20 am: 22.05.14 - 08:34:38 »
Mal auf Rootkits und z.b. irgendwelche API-Hooks getestet?

perl -e 's,,q#$:%*?:!&=(:!>@.#.$/,e;y;!-./:-@[-]{-~; a-uJP;;print;'

Offline eknori

  • @Notes Preisträger
  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re: String "vergisst" Zeichen in LotusScript
« Antwort #21 am: 22.05.14 - 10:40:16 »
@Werner, werde ich mal versuchen.
Bohre gerade das Logging weiter auf, um die Stelle noch besser eingrenzen zu können.

@mezz; ja, auch das ist schon durch
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline eknori

  • @Notes Preisträger
  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re: String "vergisst" Zeichen in LotusScript
« Antwort #22 am: 23.05.14 - 18:35:31 »
Ich denke, ich habe das Problem nun im Griff. Der letzte Test mit dem Kunden steht noch aus, ich bin aber guter Dinge, dass der heutige Fix das Problem beseitigt.

Wir haben das Problem soweit eingrenzen können, dass der Wert nach dem Ruecksprung aus der DLL verändert war.
Da der Wert über eine Type struct übergeben wurde, ist er auch ByRef an die DLL übergeben worden.
Ich habe den Wert jetzt aus der Structur gelöst und übergebe die Variable nun als zusätzliches Argument im Funktionskopf ByVal. Damit sollte der Wert sicher vor Veränderungen geschützt sein.

Bleibt aber immer noch die Frage im Raum, warum sich der Code nur auf dem System des Kunden so verhält.
Würde das gerne mal debuggen, aber ich glaube nicht, dass mir die IT dort gestattet, dass ich mal eben VisualStudio auf dem Server installiere. :)

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

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.885
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: String "vergisst" Zeichen in LotusScript
« Antwort #23 am: 23.05.14 - 23:58:05 »
ähm... Entschuldige: Aber hattest Du nicht gesagt, das ist alles "Plain LotusScript" und es wären keine DLLs beteiligt !?
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline eknori

  • @Notes Preisträger
  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re: String "vergisst" Zeichen in LotusScript
« Antwort #24 am: 24.05.14 - 00:53:50 »
99,8% der 5000 Zeilen sind LS. und da sind da noch diese 3 Zeilen, die den ganzen Kram an die DLL übergeben ... Sorry for that

Aber mal abgesehen davon. Wie soll man als SW Entwickler den code und das Logging so gestalten, dass auch ein unerfahrener Mitarbeiter im Suport anhand der Logausgaben einen solchen Fehler mit dem Kunden in den Griff bekommt. Aus meiner Sicht unmöglich. Es sei denn, man versieht jede Zeile Code ( auch innerhalb der DLL ) mit einem Debug Output aug der Console
« Letzte Änderung: 24.05.14 - 00:59:40 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 Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: String "vergisst" Zeichen in LotusScript
« Antwort #25 am: 24.05.14 - 10:00:31 »
<Nicht ernst gemeint>

5000 Zeilen Code, davon 3 Zeilen DLL = 0,06 %

99,8 % des Codes sind LotusScript, verbleiben noch 7 Zeilen (0,14 %), die noch etwas anderes sind. Vielleicht steckt das Problem ja auch dort?  ;D

</Nicht ernst gemeint>

Bezüglich des Logging denke ich, dass man einfach Mut zur Lücke haben muss. Und bei solchen absoluten Ausnahmefällen muss man dann halt individuell etwas einbauen, um die Fehlerursache zu finden.

Wir müssen auch immer bedenken, was wir tun. Welche Folgen hat ein Fehler? Fällt dadurch der Herzschrittmacher aus, werden alle Ampeln auf grün geschaltet, oder landet ein Airbus im Berg?

Ich denke wir können uns da in unserem Standardumfeld ganz entspannt zurücklegen und unseren Job so gut und ökonomisch wie möglich erledigen, immer in dem Wissen, dass ein - natürlich zu vermeidender - Fehler in Eurem Fall eine Userzulassung verhindert, in anderen Fällen vielleicht eine Arbeitsanweisung oder sonst ein "lebenswichtiges" Dokument mit einem verkehrten Status versieht.

Wer sich darüber aufregt, sollte mal darüber nachdenken, was wirklich wichtig ist ...

Offline eknori

  • @Notes Preisträger
  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re: String "vergisst" Zeichen in LotusScript
« Antwort #26 am: 26.05.14 - 12:33:44 »
Soeben wurde bestätigt, daß das Problem gefixt ist. Es war tatsächlich die Art der Übergabe (ByRef), die bei DIESEM kunden zu Problemen geführt hat. ...
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline mezz

  • Junior Mitglied
  • **
  • Beiträge: 69
Re: String "vergisst" Zeichen in LotusScript
« Antwort #27 am: 27.05.14 - 09:14:40 »

@mezz; ja, auch das ist schon durch

Ich kann mir nicht helfen aber irgendwie sagt meine allgegenwärtige Paranoia das da was stinkt ;-)
Es ist natürlich schwer da zu argumenterieren das man eine genaue Untersuchung durchführen muss - gerade wenn das ein Produktiv System ist.
Ich würde die Problematik zumindest genau dokumentieren und dem jeweilgen Sicherheits-/Datenschutz-Beauftragten (sofern der Kunde soetwas hat) davon in Kenntnis setzen und mich da auch absichern.

perl -e 's,,q#$:%*?:!&=(:!>@.#.$/,e;y;!-./:-@[-]{-~; a-uJP;;print;'

Offline eknori

  • @Notes Preisträger
  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re: String "vergisst" Zeichen in LotusScript
« Antwort #28 am: 27.05.14 - 09:22:38 »
Zitat
Ich kann mir nicht helfen aber irgendwie sagt meine allgegenwärtige Paranoia das da was stinkt ;-)

Ich habe das gesamte Problem nun ca. 2 Wochen analysiert, dokumentiert und gefixed

Die Ursache ist, daß bei der Übergabe und der anschliessenden Verarbeitung duch die IBM API eine Änderung an genau einem member einer Struct erfolgt.

Da ich nicht erwarte, daß IBM deshalb ein Fass aufmacht ( ist ja nicht reproduzierbar auf anderen vergleichbaren Systemen ) und ich darüber hinaus als BP auch keinen PMR erstellen kann, lasse ich es darauf beruhen, eine Lösung gefunden zu haben, die einfac, und auch nachvollziehbar ist. Zudem ist sie minimal invasiv im Hinblick auf Bestandskunden.

Irgendwo hatte ich mal auf einer Seite der IBM gelesen, dass man auch TYPES in LS ByVal übergeben kann. Das funktioniert aber nicht. Finde die Stelle aber leider nicht mehr.

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

Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: String "vergisst" Zeichen in LotusScript
« Antwort #29 am: 27.05.14 - 09:27:54 »
Ich bin mir nicht 100 %ig sicher, aber ich meine, dass Du Types übergeben kannst, musst die aber im Übergabeparameter als Variant deklarieren.

Offline thkn777

  • Aktives Mitglied
  • ***
  • Beiträge: 176
Re: String "vergisst" Zeichen in LotusScript
« Antwort #30 am: 27.05.14 - 09:47:12 »
Da ich nicht erwarte, daß IBM deshalb ein Fass aufmacht ( ist ja nicht reproduzierbar auf anderen vergleichbaren Systemen ) und ich darüber hinaus als BP auch keinen PMR erstellen kann, ...

Nimm den Workaround. Der IBM Support hat zu keinem der Calls, die wir in den letzten Jahren aufgemacht haben, etwas Sinnvolles beitragen können. In einigen Fällen habe ich mir dann von den Herren in Blau für unsere selbst entwickelten Workarounds einen offiziellen "Persilschein" geben lassen.

Ich bin immer noch dafür, das entsprechende System zusätzlich komplett neu aufzusetzen. Da der Fehler nicht reproduzierbar ist - sollte damit alles gelöst sein UND Du hast zusätzlich den Workaround im Code. Das macht dann doppelte Sicherheit.

Wird aber wohl nur beim Fix bleiben, wenn ich Deine Postings richtig deute.

Gutes Gelingen!
Th.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz