Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ISO creation] Filenames all in caps #19

Open
jmfergeau opened this issue May 10, 2018 · 6 comments
Open

[ISO creation] Filenames all in caps #19

jmfergeau opened this issue May 10, 2018 · 6 comments

Comments

@jmfergeau
Copy link

I tested the ISO creation for a project that aims to be at least for Windows and Linux together. And I ran into a problem.

The files and folders names completely changes when converted for the iso. For instance, a folder named Songs becomes SONGS on the iso. All accents like é è à and so on are also replaced by _. This can be a problem for software making, especially for the Linux side.

I'm a big n00b at these things but I think it's because of something in the format generated for the ISO. Maybe adding a format that keeps the file/folder names intact and an option to switch between formats would be good.

@JonnyTech
Copy link

What did you use to make the ISO? WinCDEmu only mounts ISO's, it does not create them. You need to enable Joliet when creating an ISO from whatever software you used in order to see long file names and other characters.

@jmfergeau
Copy link
Author

jmfergeau commented May 19, 2018

Yes, it does. WinCDEmu can do it (at least in its stable 4.1 version) Proof is here:
It even has the program icon!
the ISO creation window

The problem is that this only opens the dialog to save the iso file with no more options. And when it's doing it, it proposes to close the window and/or to mount the iso directly. There's no other options. Not even any joilet options. (I have another iso creator that is not free and the problem doesn't occur with this one)

Though, after some more tests, i faced more details. Very strange ones:
If I mount the iso using WinCDEmu or with the native windows mounting feature, the problem occurs. But when I open it or extract it with a compatible archive program (like 7zip) the files are showing perfectly fine!
I also tried to mount an iso not made with WinCDEmu. No problems occuring.

@JonnyTech
Copy link

Ah, I see, thanks for the correction. But the documentation only mentions creating an ISO from an optical disk. It does not mention creating an ISO from a folder. My system does not have the option to create an ISO when I right click a folder hence my confusion. I suspect that the context menu in your system is incorrect. If you want a free alternative to creating an ISO with Windows then I recommend ImgBurn.

@DenisFR
Copy link

DenisFR commented Jun 4, 2019

Hello,
I can confirm this issue.
Now SysProgs have a tuto for that:
http://wincdemu.sysprogs.org/tutorials/build/
I've made an iso of the same folder with WinCDEmu and CDBurnerXP and get a bigger file with WinCDEmu (3.514.362 vs 3.514.240)

Open them with 7zip (filenames are correct) and get file property showing diff:
CDBurnerXP add comment property:
System: Win32/Cygwin
Volume: CDROM
Application: MKISOFS ISO9660/HFS/UDF FILESYSTEM BUILDER & CDRECORD CD/DVD/BluRay CREATOR (C) 1993 E.YOUNGDALE (C) 1997 J.PEARSON/J.SCHILLING

Maybe this miss on WinCDEmu?

@DenisFR
Copy link

DenisFR commented Jun 4, 2019

Got it.
It's on /vmnt/vmnt.cpp#L123
Should be:
mkisofsOptions = _T("-r -J");
To fix it without update WinCDEmu, add this String Value in your Registry:

[HKEY_LOCAL_MACHINE\SOFTWARE\SysProgs\WinCDEmu]
"MkISOFsFlags"="-r -J "

@Wolvverine
Copy link

And another problem , cut long file name. , with -J -r to 64 (without shorter)

-J
Generate Joliet directory records in addition to regular iso9660 file names. This is primarily useful when the discs are to be used on Windows-NT or Windows-95 machines. The Joliet filenames are specified in Unicode and each path component can be up to 64 Unicode characters long. Note that Joliet is no standard - CD's that use only Joliet extensions but no standard Rock Ridge extensions may usually only be used on Microsoft Win32 systems. Furthermore, the fact that the filenames are limited to 64 characters and the fact that Joliet uses the UTF-16 coding for Unicode characters causes interoperability problems.
-joliet-long
Allow Joliet filenames to be up to 103 Unicode characters. This breaks the Joliet specification - but appears to work. Use with caution. The number 103 is derived from: the maximum Directory Record Length (254), minus the length of Directory Record (33), minus CD-ROM XA System Use Extension Information (14), divided by the UTF-16 character size (2).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants
@JonnyTech @DenisFR @Wolvverine @jmfergeau and others