Connect failed: Connection timed out

[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt Ermittlung der InDesign-Version, mit der ein Dokument erstellt wurde

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

Ermittlung der InDesign-Version, mit der ein Dokument erstellt wurde

Martin Fischer
  
Beiträge gesamt: 12779

28. Feb 2013, 16:04
Beitrag # 1 von 27
Bewertung:
(7934 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Liebe Kollegen,

mit app.version ist es möglich, die genaue Programmversion zu ermitteln, in der ein Skript ausgeführt wird.

Mit app.activeDocument.metadataPreferences.creator kommt man zwar an die CS-Version ran, mit der ein Dokument erstellt wurd, nicht aber an die detaillierte Versionsnummer wie oben mit app.version.

Hat jemand eine Idee, wie man an die detaillierte Versionsnummer, mit der ein Dokument erstellt wurde, - unabhängig von der Version des Programms, in dem das Skript aktuell läuft – herankommen könnte?

In der Diskussion »Dokumentchronik« haben wir gesehen, dass es nicht so einfach ist, an die irgendwo im Dokument vorliegenden Informationen der Dokumentchronik heranzukommen. Vielleicht hat jemand dazu inzwischen eine neue Idee - für JavaScript.
X

Ermittlung der InDesign-Version, mit der ein Dokument erstellt wurde

drerol74
Beiträge gesamt: 507

28. Feb 2013, 17:11
Beitrag # 2 von 27
Beitrag ID: #509176
Bewertung:
(7903 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,

Kasyan Servetsky hat mal eine Funktion geschrieben, mit er ein Dokument als Text-File öffnet und dort zeilenweise nach einem Grep-Ausdruck sucht. Da ging es um die Seitenzahl des Dokuments. Aber mit der Programmversion könne es ebenfalls funktionieren. Wenn es keine einfacher Möglichkeit gibt.

Im Textfile stehen dann Ausdrücke wie:

D @7.5.2.318>:—ÃÄöt¨
oder

D @8.0.1.406rΩÓÕ7¡


Vor dem @ stehen auch noch Steuerzeichen. Vielleicht hilft das weiter.


Schöne Grüße
Roland


als Antwort auf: [#509169]

Ermittlung der InDesign-Version, mit der ein Dokument erstellt wurde

WernerPerplies
Beiträge gesamt: 2760

28. Feb 2013, 17:33
Beitrag # 3 von 27
Beitrag ID: #509179
Bewertung:
(7887 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Herr Fischer,

falls diese Info wirklich in der Datei vorhanden sein sollte, gibt es eine relativ einfache Methode, die Information zu finden:

Erzeugen Sie mit unterschiedlichen InDesign-Versionen eine möglichst einfache Datei mit exakt gleichem Inhalt.

Lesen zwei dieser Dateien in einen geeigneten Hex-Reader mit Vergleichsfunktion ein, dann sehen Sie sofort die Unterschiede.

Verifizieren Sie dann Ihre Erkenntnis mit weiteren Vergleichsdateien.


als Antwort auf: [#509169]

Ermittlung der InDesign-Version, mit der ein Dokument erstellt wurde

Martin Fischer
  
Beiträge gesamt: 12779

28. Feb 2013, 17:53
Beitrag # 4 von 27
Beitrag ID: #509183
Bewertung:
(7877 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Roland,

das ist eine interessante Methode.
Dem will ich mal nachgehen.

Wenn die Programmversion, die das aktuelle Dokument erstellt hat, ermittelt werden soll, dann muss das aktuelle Dokument wohl erst dupliziert werden.
Hoffentlich versucht JavaScript dann den Inhalt erst zu lesen, wenn die Kopie abgeschlossen ist.

Das ist mir spontan noch nicht gelungen, aber ich werde dran arbeiten.


als Antwort auf: [#509176]

Ermittlung der InDesign-Version, mit der ein Dokument erstellt wurde

Martin Fischer
  
Beiträge gesamt: 12779

28. Feb 2013, 17:59
Beitrag # 5 von 27
Beitrag ID: #509186
Bewertung:
(7865 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Herr Perplies,

danke für den Hinweis.

Das führt mich in meiner Angelegenheit nicht weiter.
Ich benötige eine möglichst einfache Methode, um bei Dateien, die ich von anderen Dienstleistern erhalte, möglichst zügig zu ermitteln, ob sie in ID Version 7.0.0, 7.0.1 oder 7.0.2 erstellt worden sind.

Es können alle möglichen anderen Versionen vorkommen.
Aber das Schema für die Versionsbezeichnung dürfte mit \b\d\.\d\.\d\.\b zu greifen sein.

Vielleicht komme ich mit dem 'Auslesen' der Datei und dem Suchen nach dieser Zeichenstruktur weiter.


als Antwort auf: [#509179]

Ermittlung der InDesign-Version, mit der ein Dokument erstellt wurde

Martin Fischer
  
Beiträge gesamt: 12779

28. Feb 2013, 18:05
Beitrag # 6 von 27
Beitrag ID: #509188
Bewertung:
(7858 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Roland,

Antwort auf: Kasyan Servetsky hat mal eine Funktion geschrieben, mit er ein Dokument als Text-File öffnet und dort zeilenweise nach einem Grep-Ausdruck sucht.


Hast Du zufällig gerade das Schnipsel oder einen Link parat?
Es will mir noch nicht so recht gelingen.
Das JavaScript will das Duplikat des aktiven Dokuments schneller lesen als es verfügbar ist.


als Antwort auf: [#509176]

Ermittlung der InDesign-Version, mit der ein Dokument erstellt wurde

WernerPerplies
Beiträge gesamt: 2760

28. Feb 2013, 18:06
Beitrag # 7 von 27
Beitrag ID: #509189
Bewertung:
(7857 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Herr Fischer,

das ist eine ganz einfache Methode, wenn Sie einmal die Position kennen, können Sie durch Einlesen von wenigen Bytes die Version ermitteln.

Ich mache das, um schnell die InDesignversion zu einer INDD-Datei zu ermitteln.

Dazu müssen Sie weniger als 10 Byte einlesen, dass ist für den Anwender absolut verzögerungsfrei.


als Antwort auf: [#509186]

Ermittlung der InDesign-Version, mit der ein Dokument erstellt wurde

drerol74
Beiträge gesamt: 507

28. Feb 2013, 18:19
Beitrag # 8 von 27
Beitrag ID: #509191
Bewertung:
(7838 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Das war die Funktion:

Code
function get_number_of_pages (f) {  
if (f.exists)
{
f.open ('r');
next_line = f.readln ();
while ( next_line.indexOf ('/N ') < 0 )
next_line = f.readln ();
var p = next_line.match (/\/N (\d+)\/T/)[1]
f.close ()
return Number(p)
}
else
{
alert (f.name + ' does not exist.')
exit()
}
}


von dieser Diskussion.

Antwort auf: Das JavaScript will das Duplikat des aktiven Dokuments schneller lesen als es verfügbar ist.


Mit aktiven Dokumenten hab ich das aber auch nicht probiert. Bei mir ging es damals nur um Dokumente, die platziert werden sollen. Von denen sollten Daten ausgelesen werden, die nicht über die Metadaten greifebar waren.

Schöne Grüße
Roland


als Antwort auf: [#509188]

Ermittlung der InDesign-Version, mit der ein Dokument erstellt wurde

Peter Lenz
Beiträge gesamt: 2801

28. Feb 2013, 18:44
Beitrag # 9 von 27
Beitrag ID: #509193
Bewertung:
(7782 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Martin,
warum so kompliziert, wenn es auch einfach geht.
Auf dem Mac zieht man die InDesign-Datei auf "TextEdit" und such nach dem Begriff "Registration". Dort steht die Versions-Nummer.
Simplify your Life
Viele Grüße Peter


als Antwort auf: [#509191]

Ermittlung der InDesign-Version, mit der ein Dokument erstellt wurde

Martin Fischer
  
Beiträge gesamt: 12779

28. Feb 2013, 18:48
Beitrag # 10 von 27
Beitrag ID: #509194
Bewertung:
(7781 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Roland,

danke für den Code.

Bin mal auf volles Risiko gegangen. ;-)

- Pfad des aktiven Dokuments auslesen,
- Dokument schließen,
- als Text-Datei öffnen,
- Inhalt auslesen,
- ein Match auf 1.1.1,
- Textdatei schließen,
- InDesign Dokument wieder öffnen.

Code
var doc = app.activeDocument; 
var aFile = File(doc.fullName);
doc.close()

aFile.open( "r");
var f_content = aFile.read();
var version = f_content.match(/\d\.\d\.\d/);
if (version != null)
{
alert('Ergebnis:\n' + version.join('\n'));
}

aFile.close();
app.open(aFile);


Das war richtig brutal.
Und das ESTK mochte mich anschließend nicht mehr und verweigerte seinen Dienst. ;-)
Aber das Ergebnis stimmt.
Vielleicht fällt mir über Nacht eine sanftere Methode ein.

Vielen Dank für Deine Anregung und das Beispiel.


als Antwort auf: [#509191]

Ermittlung der InDesign-Version, mit der ein Dokument erstellt wurde

Martin Fischer
  
Beiträge gesamt: 12779

28. Feb 2013, 18:52
Beitrag # 11 von 27
Beitrag ID: #509195
Bewertung:
(7774 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Peter,

es geht um eine vollautomatische Analyse eines Dokuments.
Die Version des Erstellers ist einer von sehr viel mehr Punkten, die protokolliert werden.

Die Ermittlung muss automatisch - ohne Mausbewegung - funktionieren.
Und zwar aus einem JavaScript heraus.
Und es muss plattformunabhängig funktionieren.

Dennoch danke für den Hinweis.


als Antwort auf: [#509193]

Ermittlung der InDesign-Version, mit der ein Dokument erstellt wurde

Martin Fischer
  
Beiträge gesamt: 12779

28. Feb 2013, 18:58
Beitrag # 12 von 27
Beitrag ID: #509197
Bewertung:
(7751 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Herr Perplies,

Antwort auf: das ist eine ganz einfache Methode, wenn Sie einmal die Position kennen, können Sie durch Einlesen von wenigen Bytes die Version ermitteln.


Offen gesagt hab ich's nicht so recht verstanden.


als Antwort auf: [#509189]

Ermittlung der InDesign-Version, mit der ein Dokument erstellt wurde

-hans-
Beiträge gesamt: 748

28. Feb 2013, 19:19
Beitrag # 13 von 27
Beitrag ID: #509200
Bewertung:
(7711 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Auf macianisch:

Code
set indd to read (choose file) from 40000 to 50000 
set {TID, text item delimiters} to {text item delimiters, "@7.5."}
set currVersion to (text 1 thru 5 of (text item 2 of indd))
display alert "Version: " & "@7.5." & currVersion
set AppleScript's text item delimiters to TID


Edit: Du trennst natürlich mit "7.0." statt 7.5.


als Antwort auf: [#509197]
(Dieser Beitrag wurde von -hans- am 28. Feb 2013, 19:20 geändert)

Ermittlung der InDesign-Version, mit der ein Dokument erstellt wurde

Martin Fischer
  
Beiträge gesamt: 12779

28. Feb 2013, 19:21
Beitrag # 14 von 27
Beitrag ID: #509201
Bewertung:
(7707 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Dank auch Dir, Hans.
Aber dieses Mal brauch ich's in erster Linie für einen Betrieb unter Windows.
Und es können auch 8er- oder 6er-Versionen darunter sein.


als Antwort auf: [#509200]
(Dieser Beitrag wurde von Martin Fischer am 28. Feb 2013, 19:23 geändert)

Ermittlung der InDesign-Version, mit der ein Dokument erstellt wurde

WernerPerplies
Beiträge gesamt: 2760

28. Feb 2013, 20:22
Beitrag # 15 von 27
Beitrag ID: #509203
Bewertung:
(7658 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Herr Fischer,

Zitat Offen gesagt hab ich's nicht so recht verstanden.


Ich habe es vermutet.

Aber meine Methode funktioniert nur für die Hauptversion, die Patches stehen an keiner festen Adresse.

Ich bin aber auch nicht sicher, ob Ihre Methode funktioniert, ich finde z. B. in einer einzigen CS5.5-Datei die folgenden Einträge:
7.0.0.355 (2x)
7.5.0.142 (3x)

CS6.0:
7.0.0.355 (2x)
7.5.0.142 (6x)
8.0.1.406 (2x)

Eventuell hilft es alle Fundstellen zu suchen, zu sortieren und zu verdichten.


als Antwort auf: [#509197]
X