true portability

Started by Deb,

Deb

Good day.

I was wondering how much extra coding effort would be required to make xmplay 4.0 a truly portable application that does not write outside its folder. I am aware of the new per-user config option and the PortableApps version, but files are still created outside the xmplay folder.

Thank you for your attention.

yoba

Quote from: Debbut files are still created outside the xmplay folder.
Such as? XMPlay itself don't writes anything in the Registry nor %APPDATA% or anywhere.
The only exception is buggy xmp-ym.dll plugin, which writes and multiplies his xmp-ym.ini literally everywhere, including Music directory.

Winamp plugins/visualisations - yes, some may write its settings in the Registry or even %APPDATA%, but that's not player's fault.

Also, if listen Internet radios, SOME (rare) stations can write its cookies in system Cookies folder, or when listen from net share, depending on settings, cache may be written in system internet cache directory, but again, that's not XMPlay's fault, it just uses system's functions for Internet streaming.

Ian @ un4seen

Apart from the temporary directory (eg. when extracting an archived file for a Winamp plugin to play), XMPlay shouldn't be writing outside of its folder (%AppData%\XMPlay if per-user config is enabled). Plugins shouldn't either but I guess it's possible some 3rd-party ones do, as yoba mentions. Please list any files you've seen created elsewhere, and when they were created, eg. when playing a particular file?

Person

Quote from: Ian @ un4seenApart from the temporary directory (eg. when extracting an archived file for a Winamp plugin to play), XMPlay shouldn't be writing outside of its folder (%AppData%\XMPlay if per-user config is enabled).

Hello, I am curious: how does XMPlay.exe know if per-user config is enabled or not?
Does it read this hint from the Registry or a configuration file somewhere?

Ian @ un4seen

The "per-user config" setting is detected by whether there's an XMPLAY.INI file in the %AppData%\XMPlay folder. That file will have been moved there when the option was first enabled (in the "Miscellaneous" options page).

Darkijah bayn Jehovah

Quote from: DebGood day.

I was wondering how much extra coding effort would be required to make xmplay 4.0 a truly portable application that does not write outside its folder. I am aware of the new per-user config option and the PortableApps version, but files are still created outside the xmplay folder.

Thank you for your attention.

Any sane app should of cause be Portable, sadly it has been a continual struggle on that and gone in the opposite direction by many companies, as they want full control over things. Even making the system or apps locked to hardware, or license nonsense and such.

Don't know how Portable XMplay is, I have not moved it around on computers on a USB and seen if one run into any problems if you do that. But surely Portable apps should be respected as the way to go for freedom of the user to easily move things around and use it on different machines.

- Darkijah

Deb

Good day.

I can confirm that the folder ...\AppData\Roaming\XMPlay is created.

Maybe it can be a matter of having the per-user config box checked by default, i.e., not having to be checked by the user when first running the program?

Thank you for your attention.

Ian @ un4seen

The "per-user config" option should be enabled by default when XMPlay is installed in the "Program Files" folder. On 64-bit Windows, that currently needs to be "Program Files (x86)" (which is where 32-bit apps like XMPlay are typically installed), but this latest build should also accept "Program Files":

    www.un4seen.com/stuff/xmplay.exe

Let me know if it isn't working for you. Make sure you don't put an XMPLAY.INI file in XMPlay's folder yourself, as that'd look like you don't want per-user config enabled.