Hallo an alle,
habe das Problem, das die Pfade der Ordner, in denen sich die tif- Dateien befinden mehr als 75 Zeichen haben.
Die Erweiterungen "Imagekat" und MemoTools erstellen mir nur eine dbf mit 75 Zeichen in der Spalte Image.
Problem ist also, das die Pfadnamen danach unterbrochen sind und der Imagekat nicht geladen werden kann.
Lösung wäre zwar, kürzere Pfadnamen zu verwenden, das würde allerdings unsere Projektstrukturen etwas durcheinanderbringen.
Weiß jemand ne Lösung?
MfG
MfG
habe das Problem, das die Pfade der Ordner, in denen sich die tif- Dateien befinden mehr als 75 Zeichen haben.
Die Erweiterungen "Imagekat" und MemoTools erstellen mir nur eine dbf mit 75 Zeichen in der Spalte Image.
Problem ist also, das die Pfadnamen danach unterbrochen sind und der Imagekat nicht geladen werden kann.
Lösung wäre zwar, kürzere Pfadnamen zu verwenden, das würde allerdings unsere Projektstrukturen etwas durcheinanderbringen.
Weiß jemand ne Lösung?
MfG
MfG
- Anmelden oder Registieren, um Kommentare verfassen zu können
Gespeichert von Maxilla am Mi., 24.09.2008 - 10:02
PermalinkNew in Version 6.5-05:
The maximum path length for image catalog creation was limited to 75 as yet. Increased to 126 now
Gespeichert von Andre Steinhaeuser am Mi., 24.09.2008 - 10:05
Permalinkfolgendes Script von Jürgen habe ich mal angepasst an meine Bedürfnisse,
du wählst eine datei aus dem verzeichnis aus und er macht aus allen dateien des gleichen typs im Verzeichnis einen imgcatlg.
Dabei kannst du in der Zeile fld1 = Field.Make ("Image", #Field_CHAR, 100, 0) die 100 auch durch eine größere Zahl ersetzen, max ist 254 oder 255
#########################
' Script zur Erstellung eines ImageCatalogs
' Original Jürgen Evert, kleine Änderungen A. Steinhäuser
' -----------------------------------------
search = true
search_num = 0
program = true
imgtypes1 = ISrc.ReturnExtensions
imgtypes2 = {}
for each i in 0 .. (imgtypes1.count-1)
extstring = imgtypes1.get (i)
extstring = "*."+extstring
imgtypes2.Add (extstring)
end
while (search)
ftypes = FileDialog.ReturnFiles (imgtypes2, imgtypes1, "Auswahl eines ImageFiles", 0)
if (ftypes.count = 0) then
MsgBox.Info ("Sie haben kein Image ausgewählt!", "")
search_num = search_num + 1
if (search_num = 2) then
MsgBox.Error ("Ende des Programms!", "Abbruch")
program = false
search = false
end
else
imgfile = ftypes.Get (0)
search = false
end
end
if (program) then
theFilter = "*."+imgfile.getextension
ImgList = Imgfile.ReturnDir.ReadFiles (theFilter)
ImageCatalog = FileDialog.Put ("imgcatlg.dbf".AsFileName, "*.dbf", "Speichern des ImageKatalogs")
ImgFTab = VTab.MakeNew (Imagecatalog, dBase)
fld1 = Field.Make ("Image", #Field_CHAR, 100, 0)
fld2 = Field.Make ("XMin", #Field_DECIMAL, 30, 6)
fld3 = Field.Make ("YMin", #Field_DECIMAL, 30, 6)
fld4 = Field.Make ("XMax", #Field_DECIMAL, 30, 6)
fld5 = Field.Make ("YMax", #Field_DECIMAL, 30, 6)
ImgFTab.AddFields ({fld1, fld2, fld3, fld4, fld5})
for each f in 0 .. (ImgList.Count -1)
SN = SrcName.Make (ImgList.Get (f).AsString)
MyImageSrc = ImgSrc.Make (SN)
MyITheme = ITheme.MakeFromSrc(MyImageSrc)
theRect = MyITheme.ReturnExtent
XMin = theRect.ReturnOrigin.GetX
YMin = theRect.ReturnOrigin.GetY
XMax = XMin + theRect.GetWidth
YMax = YMin + theRect.GetHeight
ImgFTab.AddRecord
ImgFTab.SetValue (fld1, f, sn.GetFileName.AsString)
ImgFTab.SetValue (fld2, f, XMin)
ImgFTab.SetValue (fld3, f, YMin)
ImgFTab.SetValue (fld4, f, XMax)
ImgFTab.SetValue (fld5, f, YMax)
end
end
###################################
Gruß, André
Gespeichert von HeinBloed am Mi., 24.09.2008 - 11:57
PermalinkDa habe ich doch glatt die neuen MemoTools verschlafen, allerdings sind auch 126 Zeichen etwas knapp.
Das Script lief aber problemlos.
MfG
Gespeichert von Maxilla am Mi., 24.09.2008 - 12:15
PermalinkGespeichert von HeinBloed am Mi., 24.09.2008 - 14:27
PermalinkDann muss ich mit meinen Projektpfaden in Zukunft etwas aufpassen.
MfG
Gespeichert von KEngelberg am Do., 25.09.2008 - 07:41
PermalinkGespeichert von Maxilla am Do., 25.09.2008 - 10:04
PermalinkWo bleibt dein Herz für Rentner, Klaus?
Gespeichert von KEngelberg am Do., 25.09.2008 - 22:33
Permalink... und Avenue hatte wirklich seine Reize, wenn man sich erstmal in seiner Inselwelt zurechtfand.
Gespeichert von Andre Steinhaeuser am Fr., 26.09.2008 - 09:38
Permalinkauch ich als 30igjähriger freue mich auf eine Rentnerzeit mit AV3x....
Die jungen Programme heutzutage sind einfach anders. Sie sprechen VBA und wollen die Welt erobern ;-). Außerdem haben sie einfach zu hohe Ansprüche. Arbeitsspeicher und Prozessoren ohen Ende.... :-)
Viele Grüße,
André