Enyby / APK-Info

APK-Info is a Windows tool to get detailed info about an apk file.
416 stars 62 forks source link

Shell Integration don't work here. #9

Closed mikhoul closed 5 years ago

mikhoul commented 5 years ago

I'm under windows 7 I even restarted the shell and I see nothing when I select an APK with the right click menu.

image

image

Regards :octocat:

Enyby commented 5 years ago

Make double click on .apk file.

Ibuprophen commented 5 years ago

@mikhoul, try right clicking on the " APK-Info-Shell-Integration.bat" file and select the option to Run as Administrator.

Sometimes that does the trick...

~Ibuprophen

mikhoul commented 5 years ago

@ibuprophen1 I've found the bug with the script: I use for default application Winrar/7zip to open APK so when I change it to "APK-Info" it put APK-info in the context menu but NOT when I use 7zip as default application to open APK files.

Could you fix it so we could use whatever application we want to open APK and having "APK Info" in the contextual menu ?

You just have to create the registry key like this in "HKEY_CLASSES_ROOT*\shell " like this:

image

image

Regards :octocat:

Ibuprophen commented 5 years ago

@mikhoul, it's there already...

If you look at the following batch file...

https://github.com/Enyby/APK-Info/blob/master/APK-Info-Shell-Integration.bat

... You'll notice this as reflected on the lines beginning with "REG ADD "HKCR".

I'm not the developer for this but, I am curious as to why @Enyby didn't go with a registry (.reg) file when approaching this goal. Typically going with a .reg route is less likely to fail than going the .bat route.

I can only suggest/recommend...

~Ibuprophen

mikhoul commented 5 years ago

@ibuprophen1 commented on 6 nov. 2018 à 15:45 UTC−5:

@mikhoul, it's there already...

... You'll notice this as reflected on the lines beginning with "REG ADD "HKCR".

~Ibuprophen

This script or .bat file only change "HKCR" key for the .APK extension files so if you have anything else than APK-Info.exe for default application for APK files it will not work.

Look closely at the picture in my post the right key to have it working with any default applications for APK files is "HKEY_CLASSES_ROOT\shell" With the "" in the path which mean it will always be visible in the contextual menu.

The script approach is better IMO because people that are not familiar with the registry just run the bat file and it pickup variable and fulfill them automatically with no intervention from the user. :smile:

The problem is just that the information are not registered in the "HKEY_CLASSES_ROOT*\shell" but in the ""HKCR.apk" key which only work if APK-Info.exe for default application for APK files.

Regards :octocat:

Ibuprophen commented 5 years ago

I see what your referring to...

Maybe instead of using...

"REG ADD "HKCU\"

Use something like...

"%SystemRoot%\System32\reg.exe ADD HKEY_CLASSES_ROOT\"

The current way, I believe, is a type of unconventional way to get this done and I don't believe that it's a "universal" way to accomplish this.

When I've created files for performing tasks specific to the registry, I've preferred to use registry ".reg" files for merging.

It's just been a while since I ever really created a batch ".bat" file for performing tasks specific to the registry.

Maybe @Enyby would reconsider his approach?

~Ibuprophen

Enyby commented 5 years ago

This is not my approach. This was done before me and not by me. I generally think that in Windows 7 you can select "open with" and select APK-Info on the disk. and do not need any .reg or .bat files. Frankly, I did not use it and do not know what it is doing there.

Ibuprophen commented 5 years ago

Thank you very much for the response @Enyby! 👍

Since removing it may wind up in a negative way with individuals who use it asking for it back...

Maybe you can relocate the batch file within in a New Directory/Folder that's labeled something like "Deprecated-Shell-Integration-Batch-File".

This way it's still there but, clearly labeled as such.

I can create a few pull requests reflecting this but, someone with the Admin Rights of the Repo can actually do this much faster and easier.

Just a suggestion/recommendation My Friend.

~Ibuprophen

Ibuprophen commented 5 years ago

I just remembered that an individual can also, alternatively, go to the location...

Open the Run prompt (via Start Menu or by using the key combo of Pressing & hold the Windows Key and then press the R key and release the keys) and type the following...

%APPDATA%\Microsoft\Windows\SendTo\

Then place a "Shortcut" of the Apk Info exe file within it... Then exit.

Now the Apk Info will be seen when you Right Click and scroll down to the Send To entry of the context menu and it'll be there.

Another suggestion...

~Ibuprophen

Enyby commented 5 years ago

When I've created files for performing tasks specific to the registry, I've preferred to use registry ".reg" files for merging.

You can not use .reg file because path can not different. So you need .bat file.

Could you fix it so we could use whatever application we want to open APK and having "APK Info" in the contextual menu ?

It is not "fix". It is complete different things.

oeloo commented 1 year ago

Hi, the .bat does not work in windows 11 due to this : image

I have modified it so that it works:

@ECHO OFF

ECHO APK-Info shell integration...
ECHO.

for %%H in (HKCU) do (
    REG ADD "%%H\SOFTWARE\Classes\.apk" /ve /t REG_SZ /d "APK-Info" /f >nul 2>nul
    REG ADD "%%H\SOFTWARE\Classes\APK-Info\DefaultIcon" /ve /t REG_SZ /d "%cd%\APK-Info.exe" /f >nul 2>nul
    REG ADD "%%H\SOFTWARE\Classes\APK-Info\shell\open" /ve /t REG_SZ /d "APK-Info" /f >nul 2>nul
    REG ADD "%%H\SOFTWARE\Classes\APK-Info\shell\open\command" /ve /t REG_SZ /d "%cd%\APK-Info.exe %%1" /f >nul 2>nul

    REG ADD "%%H\SOFTWARE\Classes\SystemFileAssociations\.apk\Shell\APK-Info\Command" /ve /t REG_SZ /d "%cd%\APK-Info.exe %%1" /f >nul 2>nul
)

ECHO APK-Info shell integration completed!
ECHO.
ECHO.
ECHO     **** Press any key to exit ****
pause > NUL