Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: bikerboy am 20.09.07 - 15:52:26
-
HI,
ist es möglich zu prüfen, ob eine DB lokal verschlüsselt ist? Für Dokumente weiss ich dass es das Property gibt, aber was ist mit der DB an sich ?
-
Nope nicht mit Script.
-
Das sollte auch mit LS gehen - wenn man die DB als File byteweise ausliest. Irgendwo wird die Info stehen (oder eine Info fehlt / sieht anders aus). Vielleicht kommt man da durch probieren und nem Hexeditor drauf.
Bernhard
-
OK Bernhard das mag ja gehen, aber ich glaub nicht das es dem Fahradbengel wirklich weiterhilft. Da kann er genausogut die C-API nehmen. Damit dürfte das dann vermutlich etwas einfacher zu lösen sein.
-
Davon bin iich auch überzeugt.
Bernhard
-
Ich find Bernhards Vorschlag eigentlich ok.
Du schaust dir eine lokal verschlüsselte und mehrere nicht-verschlüsselte Datenbanken im Hex-Editor an.
Bin mir ziemlich sicher, dass es für nicht verschlüsselte Datenbanken ein Muster für die ersten Bytes gibt.
Dann kann man die Datenbanken byteweise einlesen und nachschauen.
Die ersten 6 Bytes für nicht-verschlüsselte Notes-Datenbanken scheinen immer gleich zu sein: 1A 00 00 04 00 00
Download für Hexeditor: http://mh-nexus.de/downloads.php?product=HxD
-
ja nee so Wichtig ist es nicht, hätte ja sein können , dass es nen einfache Funktion gibt von der fast niemand weiss. Ich bedanke mich.
-
Const wAPIModule = "NNOTES" ' Windows/32
Declare Private Function NSFDbOpen Lib wAPIModule Alias "NSFDbOpen" _
( Byval P As String, hDB As Long) As Integer
Declare Private Function NSFDbClose Lib wAPIModule Alias "NSFDbClose" _
( Byval hDB As Long) As Integer
Declare Private Function NSFDbIsLocallyEncrypted Lib wAPIModule Alias "NSFDbIsLocallyEncrypted" _
( Byval hDB As Long, V As Integer) As Integer
Declare Private Function OSPathNetConstruct Lib wAPIModule Alias "OSPathNetConstruct" _
( Byval NullPort As Long, Byval Server As String, Byval FIle As String, Byval PathNet As String) As Integer
Function IsLocallyEncrypted(db As NotesDatabase) As Variant
np$ = Space(1024)
OSPathNetConstruct 0, db.Server, db.FilePath, np$
Dim hDB As Long
NSFDbOpen np$, hDB
If hDB = 0 Then Exit Function
NSFDbIsLocallyEncrypted hDB, v%
NSFDbClose hDB
IsLocallyEncrypted = Not (v% = 0)
End Function
[QUELLE (http://www-10.lotus.com/ldd/46dom.nsf/c21908baf7e06eb085256a39006eae9f/63a6174bef5eb92380256ba7004a9e8f?OpenDocument)]
-
Danke, Ulrich.
Und: Klar, dass das von Rod Whiteley kam ;)
Bernhard
-
Ja super danke