Russische Zeichen -> link to a nonexistent file
Posted 06 August 2008 - 10:36
ich soll eine Installation für Russland erstellen und habe Dateien mit kyrillische Zeichen erhalten.
Beim Kompilieren erhalte ich die Fehlermeldung:
CODE |
ISDEV : warning -5000: Component 'XYZ' contains a link to a nonexistent file - 'D:\Installshield\XYZTHORAX01 ? ????.xxx' |
Die ? sind kyrillische Zeichen, die auch korrekt im Windows Explorer angezeigt werden (siehe Attachment).
Was ist zu tun, dass diese Dateien mit eingebunden werden?
Ich habe das Setup auf einem russischen XP gestartet, aber er meckert, dass diese Datei nicht gefunden wurde.
Mein System:
OS: 32-Bit Vista deutsch
IS: Installshield 2008 - Premier Englisch
[Edit:] Mich verwundert das Ganze, da eine andere Datei mit kyrillischen Zeichen eingebunden wird!
Edited by sraisin, 07 August 2008 - 07:31.
Posted 07 August 2008 - 17:31
Stefan Krüger
InstallSite.org twitter facebook
Posted 08 August 2008 - 09:31
ich wusste nicht einmal, wie ich anfangen sollte zu suchen.
Nun habe ich folgenden Beitrag gefunden:
http://community.ins...r...=*cyrillic*
bei dem extra ein "East" Language Pack installiert wurde, damit es klappt.
Nur: Wie kann ich diesen "East" Language Pack bei Installshield 2008 - Premier Englisch installieren?
Wohl gar nicht, da diese in der Premier Edition enthalten sind.
Acresso shop schreibt:
"Acresso Software no longer sells individual Language Packs through the eShop. Language Packs are now included with the InstallShield Premier Edition."
Aber warum werden manche Dateien nicht mit einbezogen, bzw. man erhält die Fehlermeldung: "contains a link to a nonexistent file" und das Setup kann nicht erstellt werden!?!
Grüße,
Steffen
Posted 08 August 2008 - 10:51
Stefan Krüger
InstallSite.org twitter facebook
Posted 08 August 2008 - 12:51
Ich habe die betroffene Datei umbenannt (also nur westliche Zeichen). -> kein Erfolg.
Die betroffene Datei habe ich in ein anderes Verzeichnis verschoben. -> kein Erfolg.
Bin doch ein bißchen ratlos.
Grüße,
Steffen
Posted 10 August 2008 - 21:12
Liegt die Datei denn in D:\Installshield ?
Stefan Krüger
InstallSite.org twitter facebook
Posted 12 August 2008 - 10:05
hier mal ein Auszug von Process Monitor:
Ich habe das gesamte Verzeichnis mit der betreffenden Datei nach
"D:\Installshield\Russian\productname\product\Handbuch\" kopiert, wo auch die andere Datei mit kyrillischen Zeichen vorhanden ist.
Und siehe da, die betreffende Datei wird mit eingebunden.
CODE |
2895594 10:38:43,2261364 isdev.exe 8012 CreateFile D:\Installshield\Russian\productname\product\Handbuch\Figures SUCCESS Desired Access: Read Data/List Directory, Synchronize, Disposition: Open, Options: Directory, Synchronous IO Non-Alert, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a, OpenResult: Opened 2895595 10:38:43,2262236 isdev.exe 8012 QueryStandardInformationFile D:\Installshield\Russian\productname\product\Handbuch\Figures SUCCESS AllocationSize: 0, EndOfFile: 0, NumberOfLinks: 1, DeletePending: False, Directory: True 2895596 10:38:43,2262644 isdev.exe 8012 QueryDirectory D:\Installshield\Russian\productname\product\Handbuch\Figures\* SUCCESS Filter: *, 1: . 2895597 10:38:43,2262894 isdev.exe 8012 QueryDirectory D:\Installshield\Russian\productname\product\Handbuch\Figures SUCCESS 0: .., 1: 13.wlk, 2: BLOBMAN.3DS, 3: Skelett.3ds, 4: Sunset90.jpg, 5: THORAX01 и дети.aco 2895598 10:38:43,2263118 isdev.exe 8012 QueryDirectory D:\Installshield\Russian\productname\product\Handbuch\Figures NO MORE FILES 2895599 10:38:43,2263241 isdev.exe 8012 CloseFile D:\Installshield\Russian\productname\product\Handbuch\Figures SUCCESS 2895601 10:38:43,2264189 isdev.exe 8012 CreateFile D:\Installshield\Russian\productname\product\Handbuch\Figures SUCCESS Desired Access: Read Data/List Directory, Synchronize, Disposition: Open, Options: Directory, Synchronous IO Non-Alert, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a, OpenResult: Opened 2895602 10:38:43,2264453 isdev.exe 8012 QueryDirectory D:\Installshield\Russian\productname\product\Handbuch\Figures\* SUCCESS Filter: *, 1: . 2895603 10:38:43,2264636 isdev.exe 8012 QueryDirectory D:\Installshield\Russian\productname\product\Handbuch\Figures SUCCESS 0: .., 1: 13.wlk, 2: BLOBMAN.3DS, 3: Skelett.3ds, 4: Sunset90.jpg, 5: THORAX01 и дети.aco 2895604 10:38:43,2264843 isdev.exe 8012 QueryDirectory D:\Installshield\Russian\productname\product\Handbuch\Figures NO MORE FILES 2895605 10:38:43,2264959 isdev.exe 8012 CloseFile D:\Installshield\Russian\productname\product\Handbuch\Figures SUCCESS |
und hier mit dem anderen Verzeichnis:
CODE |
2968574 10:38:54,2713808 isdev.exe 8012 QueryOpen D:\Installshield\Russian\productname\product\3DS\Figures\THORAX01 и дети.aco NAME INVALID 2968575 10:38:54,2714635 isdev.exe 8012 CreateFile D:\Installshield\Russian\productname\product\3DS\Figures SUCCESS Desired Access: Read Data/List Directory, Synchronize, Disposition: Open, Options: Directory, Synchronous IO Non-Alert, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a, OpenResult: Opened 2968576 10:38:54,2715019 isdev.exe 8012 QueryDirectory D:\Installshield\Russian\productname\product\3DS\Figures\THORAX01 ? ????.aco SUCCESS Filter: THORAX01 ? ????.aco, 1: THORAX01 и дети.aco 2968577 10:38:54,2715238 isdev.exe 8012 CloseFile D:\Installshield\Russian\productname\product\3DS\Figures SUCCESS 2968579 10:38:54,2720954 isdev.exe 8012 QueryOpen D:\Installshield\Russian\productname\product\3DS\Figures\THORAX01 и дети.aco NAME INVALID |
Ich habe mir alle Rechte gegeben. Haben den Besitz übernommen, neu gebootet, usw.
Alles versucht, was ich so im www gefunden habe.
Was mich noch verdutzt, dass ich den Schreibschutz nicht komplett wegmachen kann. Es gibt ja diese "drei" Zustände". siehe http://www.heise.de/.../04/01/01.shtml
Alle Ordner haben den Zustand "Ich weiß nicht". Daran kann es wohl auch nicht liegen, da manche Ordner gehen und manche nicht. Hat da IS Probleme mit?
Nicht einmal in der DOS-Box bekomme ich den Schreibschutz weg!
Was kann ich noch probieren?
Gruß,
Steffen
Posted 13 August 2008 - 09:30
QUOTE |
2968574 10:38:54,2713808 isdev.exe 8012 QueryOpen D:\Installshield\Russian\productname\product\3DS\Figures\THORAX01 и дети.aco NAME INVALID |
Das sieht schlecht aus. Ist D: ein lokales Laufwerk oder im Netz? Irgendwie scheint dieses Laufwerk Probleme mit dem Dateinamen zu haben. Vielleicht wird der Pfadstring zu lang wenn die kyrillischen Buchstaben intern auf lateinische Buchstaben umgesetzt werden oder so?
Scheint jedenfalls kein Problem vom InstallShield zu sein, sondern vom Windows, denn der Fehlercode NAME INVALID wird ja vom Windows API QueryOpen zurückgeliefert.
Stefan Krüger
InstallSite.org twitter facebook
Posted 13 August 2008 - 10:04
D: ist ein lokales Laufwerk.
Habe nun die Datei in ein "kürzeres" Verzeichnis verschoben, aber auch das hilft nicht
QUOTE |
ISDEV : warning -5000: Component '3DS' contains a link to a nonexistent file - 'D:\Installshield\3DS\Figures\THORAX01 ? ????.aco' |
Nun soll mein Kollege das Projekt unter XP testen.
...ich berichte weiter...
Edited by sraisin, 13 August 2008 - 11:44.
Posted 13 August 2008 - 22:38
Der Dateiname kann nicht aufgelöst werden und somit nicht kompiliert werden.
Also liegt die Vermutung sehr nahe, dass IS doch Probleme mit dieser Kombination von kyrillischen Zeichen hat.
Grüße,
Steffen
Posted 18 August 2008 - 15:20
Im DirectEditor werden die Dateinamen leider auch mit "?" angezeigt. Siehe Anhang.
Alle anderen kyrillischen Dateien werden auch ausgeschlossen. Ich hatte einen Fehler noch drin, dass die Komponente nur in der Sprache "Deutsch" mitgenommen werden soll.
Beim Release steht es aber auf "Russisch".
Somit kann ich generell sagen, dass mein IS Probleme mit kyrillischen Zeichen hat. Nicht wie vorher behauptet, dass manche Dateinamen mit eingeschlossen werden.
Was nun? Wenn keiner mehr eine Idee hat, dann versuche ich es mal im Forum von Acresso.
Mal noch was ganz anderes:
Es hat nicht zufälligerweise was mit der Schriftart im Installscript zu tun?
Da kann man für "Skript" -> "Westlich" auswählen, aber kein "Östlich" o.ä..
Kann man das noch irgendwie umstellen?
Grüße,
Steffen
Posted 18 August 2008 - 16:11
Hast du mal versucht, in der Tabelle Fle den richtigen Dateinamen (mit kyrillischen Zeichen) einzutragen?
Was du auch noch versuchen kannst: Ändere mal das Projektdateiformat auf Binär (bei InstallScript-Projekten steht es glaube ich normalerweise auf XML)
Stefan Krüger
InstallSite.org twitter facebook
Posted 19 August 2008 - 07:47
In der Tabelle "File" konnte ich den richtigen Namen nicht eintragen. Dann erhalte ich die angehängte Fehlermeldung und den Namen kann nicht geändert werden.
In der Tabelle "Filename" konnte ich den Namen ändern, aber das bringt leider auch nichts beim Kompilieren.
Gruß,
Steffen
Edited by sraisin, 19 August 2008 - 07:49.
Posted 19 August 2008 - 16:07
In Systemsteuerung -> Regions- und Sprachoptionen -> Tab "Verwaltung"
Bei "Sprache für Unicode-inkompatible Programme" habe ich nun das Systemgebietsschema" auf "Russisch" gestellt.
...ich dachte, ich hätte das schonmal irgendwann gemacht...
Nun werden die Dateien mit kyrillischen Zeichen mit eingebunden.
Ich vermute, so wird es sich wohl mit allen anderen "Zeichensätzen" in Dateinamen verhalten.
Naja, nun ist das zwar in IS schön sauber, aber manch andere Programme zeigen nun die Menüs in Russisch.
Gut, dass IS nicht in Russisch angezeigt wird.
Ob da Acresso nicht was ändern könnte!?!
Grüße,
Steffen