Zhrouceni pri otevreni souboru s dlouhym nazvem
Zhrouceni pri otevreni souboru s dlouhym nazvem
Dela to uz od verze beta 10.
Setkal jsem se s tim tedy jen pod XPcky (Win2K zda se OK).
Pri snaze spustit soubor s nejakym dlouhym nazvem (nemam presne otestovano, ale rekneme vic jak 64 znaku) vcetne cesty, program se zhrouti. Windowsovska hlaska "program vygeneroval chyby, blablabla" - zadny Salamander crash report.
Dela to pri vsech extenzich souboru (avi, exe, doc... ).
Zkousel jsem to i na systemu s cistymi XPcky SP2 (ceska mutace). To same.
Setkal jsem se s tim tedy jen pod XPcky (Win2K zda se OK).
Pri snaze spustit soubor s nejakym dlouhym nazvem (nemam presne otestovano, ale rekneme vic jak 64 znaku) vcetne cesty, program se zhrouti. Windowsovska hlaska "program vygeneroval chyby, blablabla" - zadny Salamander crash report.
Dela to pri vsech extenzich souboru (avi, exe, doc... ).
Zkousel jsem to i na systemu s cistymi XPcky SP2 (ceska mutace). To same.
Potvrzuji, že při přesažení délky cesty se jménem souboru hodnoty MAX_PATH = 260 znaků Servant Salamander nefunguje (v mém případě se nesane vůbec nic viditelného).
Vytvoření takové cesty se mi však podařilo až s využitím problematických rekurzivních Reparse pointů. Servant Salamander i Windowsí Příkazová řádka se vytvoření takovýchto souborů brání. Později jsem objevil možnost vytvořit takovýto soubor legálně: přejmenováním nadřazeného adresáře prodloužit cestu k souboru.
Poznámky:
- Příkazy F3 - View i F4 - Edit fungují u takovýchto souborů normálně....
- Příkaz Shift+F4 - Editace souboru podle jména/Vytvoření nového souboru omezuje vstup na (odhaduji) 260 znaků, ale ve skutenosti nelze soubor s tak dlouhým názvem vytvořit. Při odklepnutí dialogu se okamžite objeví hláška (asi od Windows), že je název moc dlouhý. Je možné omezit délku vstupu podle toho, jak dlouhá je cesta aktuálního adresáře? Případně oznámit o kolik znaků název souboru přesahuje maximalní délku?
Vytvoření takové cesty se mi však podařilo až s využitím problematických rekurzivních Reparse pointů. Servant Salamander i Windowsí Příkazová řádka se vytvoření takovýchto souborů brání. Později jsem objevil možnost vytvořit takovýto soubor legálně: přejmenováním nadřazeného adresáře prodloužit cestu k souboru.
Poznámky:
- Příkazy F3 - View i F4 - Edit fungují u takovýchto souborů normálně....
- Příkaz Shift+F4 - Editace souboru podle jména/Vytvoření nového souboru omezuje vstup na (odhaduji) 260 znaků, ale ve skutenosti nelze soubor s tak dlouhým názvem vytvořit. Při odklepnutí dialogu se okamžite objeví hláška (asi od Windows), že je název moc dlouhý. Je možné omezit délku vstupu podle toho, jak dlouhá je cesta aktuálního adresáře? Případně oznámit o kolik znaků název souboru přesahuje maximalní délku?
-
- ALTAP Staff
- Posts: 5231
- Joined: 08 Dec 2005, 06:34
- Location: Novy Bor, Czech Republic
- Contact:
Re: Zhrouceni pri otevreni souboru s dlouhym nazvem
Šlo určitě u čistě nainstalovaný operační systém (žádné aplikace)? Podle toho co popisujete mám dojem, že k pádu dochází v některé z Shell Extensions, viz tato vlákna:CityShark wrote:Zkousel jsem to i na systemu s cistymi XPcky SP2 (ceska mutace). To same.
http://forum.altap.cz/viewtopic.php?t=497
http://forum.altap.cz/viewtopic.php?t=500
http://forum.altap.cz/viewtopic.php?t=1474
Je to nejpravděpodobnější vysvětlení, protože takovou chybu by uživatelé dávno odhalili.
Zkuste prosím zapnout volbu Options > General > Open files through salopen.exe. Má to nějaký efekt?
Re: Zhrouceni pri otevreni souboru s dlouhym nazvem
No kdyz to zapnu, tak se salopen.exe zhrouti stejnym zpusobem. Salamander jako takovy zustane.Jan Rysavy wrote: Zkuste prosím zapnout volbu Options > General > Open files through salopen.exe. Má to nějaký efekt?
Vlakna se shell extension problemy jsem procetl jeste nez jsem daval prispevek sem, ale jestli jsem to spravne pochopil, je to zpusobeno externimi programy (ktere jsou asociovane ke klikanemu souboru). Me se to deje napr. i u EXEcek...
OS byl skutecne cisty. Ted to uz neodsimuluju, protoze cistym PC nedisponuju... nicmene na WIN2K se mi to nikdy nestalo. S XP ano. (na stejnem zeleze)...
-
- ALTAP Staff
- Posts: 5231
- Joined: 08 Dec 2005, 06:34
- Location: Novy Bor, Czech Republic
- Contact:
-
- ALTAP Staff
- Posts: 5231
- Joined: 08 Dec 2005, 06:34
- Location: Novy Bor, Czech Republic
- Contact:
Nouzový režim asi není třeba testovat, pokusíme se najít příčinu padání.
Mám silné podezření, že se skutečně jedná o Shell Extension problém, pravděpodobně některé taková knihovna ukládá cestu do lokálního bufferu, který má nedostatečnou velikost (například poloviční díky opomenutí Unicode kódování). Docházelo by tak k přepsání zásobníku, takže k porušení našeho mechanismu pro hlášení chyb (Bug Report), který je založen na výjimkách. No uvidíme, moc rád bych knihovnu identifikoval pro další uživatele.
1. Zkuste prosím postupně prodlužovat cestu (přejmenováním adresáře spouštěného souboru) a určit při kolika znacích začne Salamander padat. Není to kolem 128 znaků? Možná se na hranici nepadání/padání Salamander zachová lépe (zásobník nebude tak zničený) a vygeneruje Bug Report, což by nám velice pomohlo.
2. Zkuste, zda Salamander padá také v případě kliknutí na soubor pravým tlačítkem a zvolením položky Otevřít.
3. Zkuste otevřít okno Průzkumníka (Shift+F3 ze Salamandera), kliknout tam na soubor pravým tlačítkem a zvolit příkaz Otevřít. Padá Průzkumník?
Mám silné podezření, že se skutečně jedná o Shell Extension problém, pravděpodobně některé taková knihovna ukládá cestu do lokálního bufferu, který má nedostatečnou velikost (například poloviční díky opomenutí Unicode kódování). Docházelo by tak k přepsání zásobníku, takže k porušení našeho mechanismu pro hlášení chyb (Bug Report), který je založen na výjimkách. No uvidíme, moc rád bych knihovnu identifikoval pro další uživatele.
1. Zkuste prosím postupně prodlužovat cestu (přejmenováním adresáře spouštěného souboru) a určit při kolika znacích začne Salamander padat. Není to kolem 128 znaků? Možná se na hranici nepadání/padání Salamander zachová lépe (zásobník nebude tak zničený) a vygeneruje Bug Report, což by nám velice pomohlo.
2. Zkuste, zda Salamander padá také v případě kliknutí na soubor pravým tlačítkem a zvolením položky Otevřít.
3. Zkuste otevřít okno Průzkumníka (Shift+F3 ze Salamandera), kliknout tam na soubor pravým tlačítkem a zvolit příkaz Otevřít. Padá Průzkumník?
-
- ALTAP Staff
- Posts: 5231
- Joined: 08 Dec 2005, 06:34
- Location: Novy Bor, Czech Republic
- Contact:
-
- ALTAP Staff
- Posts: 5231
- Joined: 08 Dec 2005, 06:34
- Location: Novy Bor, Czech Republic
- Contact:
Ještě prosím doma zkuste jeden test: ve stavu kdy Salamander nepadá (krátká cesta) provést test podle tohoto postupu:
http://www.altap.cz/salam_en/faulty_she ... sions.html
( podle sekce 1.2 Servant Salamander malfunction )
Potřeboval bych vědět, které Shell Extensions se nahrají do našeho procesu po otevření dokumentu. Pokud Vám postup není v něčem jasný, napište mi prosím (lze si ho otestovat i kdekoliv, kde je Salamander, vždy se nějaké Shell Extensions najdou).
http://www.altap.cz/salam_en/faulty_she ... sions.html
( podle sekce 1.2 Servant Salamander malfunction )
Potřeboval bych vědět, které Shell Extensions se nahrají do našeho procesu po otevření dokumentu. Pokud Vám postup není v něčem jasný, napište mi prosím (lze si ho otestovat i kdekoliv, kde je Salamander, vždy se nějaké Shell Extensions najdou).
Pri debugovani odporucam pouzit nastroj ShellExView od Nira Sofera:
http://www.nirsoft.net/utils/shexview.html
Je tam aj zopar inych VELMI praktickych nastrojov.
http://www.nirsoft.net/utils/shexview.html
Je tam aj zopar inych VELMI praktickych nastrojov.