Launch fail in 7z distro #35

Closed
vatterspun opened this Issue Sep 26, 2015 · 18 comments

Projects

None yet

4 participants

@vatterspun

Setup: Win7x86 and x64, Halite v. 0.4.0.3

Steps:

  1. Download 7z version
  2. Extract with 7-zip
  3. Launch halite.exe

Defect: no response. Appears in Task Manager but no window ever appears.

There is a report on portablefreeware.com that this is also happening on Win8x64 but I can't verify that.

@joshas
joshas commented Nov 12, 2015

Same issue on Windows 7 64-bit. Earlier version (0.4.0.2) started without issues. This one just creates config\globals\halite folder and that's it.

@svnpenn
svnpenn commented Dec 3, 2015

I found the fix for this. The program is looking for a registry key, which does not get installed when you use the 7z. You can add it like this:

Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Halite]
@joshas
joshas commented Dec 3, 2015

Nice find @svnpenn .
To developers: how about not storing settings in Windows registry?

@vatterspun

I would prefer using an INI file in APPDATA. I find it easier to back up my settings that way.

I actually prefer settings saved to the application folder. Enables synchronization/backing up to the cloud and use from a USB drive.

@svnpenn
svnpenn commented Dec 4, 2015

@vatterspun that is pretty dumb. If you put the application folder in Program Files, which is the sane thing to do, only admins will have write access. APPDATA existing to solve this exact problem, as it allows per user config permissions.

@vatterspun

... only admins will have write access. APPDATA existing to solve this exact problem, as it allows per user config permissions.

Those are all solutions available to admins that deliver software to large networks of computers used by multiple people. However, what admins are installing BitTorrent clients? I suggest that 99% of Halite users are individuals who are running the program to enable P2P downloading. Making that easy to setup, run, and close down is crucial to it's adoption. There's a reason so many other BitTorrent clients (uTorrent, Tixati, qBitTorrent, FDM, Transmission-Qt) have portable versions where settings are saved to the local folder.

@svnpenn
svnpenn commented Dec 4, 2015

@vatterspun you want to prevent some users from using the program at all, just so that it will be easier for you. No.

@vatterspun

you want to prevent some users from using the program at all, just so that it will be easier for you. No.

My goal in this suggestion is to open doors to more users. I don't know where you're getting a sense that this would prevent access.

@svnpenn
svnpenn commented Dec 12, 2015

@vatterspun if you can only config the program from local folder, then any installs to Program Files will be useless to non administrators. Perhaps you should research Windows application permissions before commenting further

@vatterspun

@svnpenn Do you realize there are two versions, an MSI and a 7z version? Did you notice that this thread started out talking about the 7z version? Did you know that -- when it works as this is a bug report about the fact that it doesn't launch -- the 7-zip version saves data to the local folder? My note about the settings isn't a feature request but a request to maintain current behavior.

If you don't believe me, download the previous Version (0.4.0.2):
https://github.com/Eoinocal/Halite/releases/download/Release-0.4.0.2/Halite-0.4.0.2-x86.7z

When launched, the program writes to bittorrent.xml and .\config

@svnpenn
svnpenn commented Dec 12, 2015

@vatterspun no, it writes to C:\Users\<user>\AppData\Local\Halite

@vatterspun

@svnpenn lol I give up. screenshot: http://i.imgur.com/0uUx8WE.png

@Eoinocal
Owner

I've been ridiculously busy recently, but I will fix this, and hopefully more, by the weekend.

@vatterspun

@Eoinocal no problem, appreciate your work on this

@Eoinocal
Owner

Halite determines if it should run in portable mode by looking for the registry key under [HKEY_CURRENT_USER\Software\Halite] If that key is not there then Halite runs in portable* mode and stores all configuration related file in the same dir as the exe. If it finds the key then it uses the APPDATA folder, this is the standard way of doing things in windows as I understand it.

One issue is you can't have a portable version and installed version of Hailte on the user account. The portable version would see the reg key from the installed version and proceed to use the APPDATA folder. Doing it this way means it's the same EXE in both the install and 7z distributions. I suppose that is a weakness but I just don't envision many people wanting installed and portable versions of halite at the same time.

  • Well it should run in portable mode, but there was a bug causing it to go into an infinite loop. That's fixed in 8864fa3
@Eoinocal Eoinocal closed this Dec 18, 2015
@vatterspun

Eoinocal closed this

Thanks for that.

I suppose that is a weakness but I just don't envision many people wanting installed and portable versions of halite at the same time.

Agreed. I can't imagine many real-world situations where this will be an issue.

there was a bug causing it to go into an infinite loop. That's fixed in 8864fa3

Will this fix go into the next release / beta?

@Eoinocal
Owner

I've just uploaded a release with hopefully the bug fixed. https://github.com/Eoinocal/Halite/releases/tag/Release-0.4.0.4

@vatterspun

@Eoinocal confirmed. Halite-0.4.0.4-x86.7z starts just fine. :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment