I can pin Firefox Portable to the taskbar, no problem. If I click on it from the taskbar to open it, it opens up exactly where it is pinned at.
But when I pin OBS Portable to the taskbar, it won't open up where it is pinned. It will open up and appear after every other program that is pinned to the taskbar.
Just to be sure, I unpinned both Firefox Portable and OBS Portable. And then I used PortableApps.com Platform to pin both programs. Firefox Portable worked. OBS Portable did not.
It's working here as expected on Windows 10 x64 latest build.
Please include the details on your OS, full install path, and the exact steps you're using to pin, thanks.
Sometimes, the impossible can become possible, if you're awesome!
Man this is such a headache. Anytime I have a problem, it's always like it's my fault and no one else's.
I have two laptops.
I have an OLD Acer Aspire 5 laptop. And I have a NEW Acer Nitro 5 laptop.
Both laptops are running Windows 10 Home, 20H2, OS build 19042.804 (up-to-date).
On my OLD Acer Aspire 5 laptop, I installed PortableApps.com Platform on my C drive. "C:\Programs\Portable Apps" to be exact. And when I open up the PortableApps.Platform app, I do what one would normally do. I right click 'Mozilla Firefox', select 'Pin to Taskbar', get the pop-up notification, click 'OK', wait for the Explorer window to open up, and then I drag the shortcut to the taskbar. And it works, no problem. On my OLD Acer Aspire 5 laptop. PS - On a sidenote, instead of dragging the shortcut to the taskbar, I could also right click the shortcut and select 'Pin to taskbar'.
On my NEW Acer Nitro 5 laptop, it is DIFFERENT. Because I did not install PortableApps.com Platform on my C drive. I did not install it on my 2 TB HDD, which is my D drive. No. Instead of installing it on a HDD or SSD, I installed it on my USB Drive. Why? Because I can take my USB Drive anywhere. I can use it on a Library computer. I can use it on another personal computer. I can use it on a friend's computer. I don't want to take HDDs or SSDs with me. So that is why I put this PortableApps.Platform app on my USB Drive, which is the G drive on my computer.
Now, on my NEW Acer Nitro 5 laptop, if I open up the PortableApps.com Platform app from my USB Drive, and I follow the above aforementioned steps to pin 'Mozilla Firefox' or 'OBS Studio' to the taskbar, it does not work. After it pulls up the Explorer window, I can't drag the shortcuts to the taskbar. It shows a red circle with a diagonal line. If I right click the shortcuts, there is no 'Pin to Taskbar' option in the context menu. I've told you this many times already in many of my previous posts. But I found a workaround. My workaround is to create a symbolic link to trick my computer into thinking that PortableApps.com Platform is actually installed on my C drive instead of my G drive (USB Drive). To do this, I opened up the Command Prompt Window and typed the following:
mklink /D "C:\Portable Apps" "G:\009__Other\Portable Apps"
AFTER I created the symbolic link, I can't open the PortableApps.com Platform from the G drive (USB Drive) because if I do, it won't let me pin the app to the taskbar. I have to open the PortableApps.com Platform app from the symbolic folder which is "C:\Portable Apps". And when I do that, IT LETS ME PIN 'MOZILLA FIREFOX' TO THE TASKBAR!!!!! ISN'T THAT AMAZING???? IT REALLY IS!!!!!! And guess what? IT LETS ME PIN 'OBS STUDIO' TO THE TASK BAR TOO!!!!! OMG!!!! BOTH PROGRAMS ARE PINNED!!!!! WOW!!!!!!!!!! But here is the problem. If I click the 'Mozilla Firefox' pin, it opens up in the place that it is pinned. Which is perfect. If I click the 'OBS Studio' pin, it opens up at the far right end of the taskbar. Not where it is pinned. THAT is the problem.
Now you can make any and every excuse in the book, but I'm just tired and disgusted. I did have my own, more trustworthy method of pinning portable apps to the taskbar using the AppID of the program and using Win7AppID to assign that AppID to a dummy .exe shortcut. It was working great until I published the guide. Then it's like you purposely went out of your way to make it not work. On my old install of 'Firefox Portable' which was updated to the most up-to-date version, it worked. But as soon as I did a fresh install of 'Firefox Portable' (not using PlatformApps.com Platform, but the direct install link instead), even though it was the same exact and up-to-date version, suddenly the AppID no longer appeared in the 7+ Taskbar Tweaker inspection window. It's like you went out of your way to hide the AppID. But then I found an alternative method for finding the AppID by using Windows Powershell. But even after assigning this AppID to a dummy .exe shortcut using Win7AppID, it no longer worked. Why would it work on my old install that was UP-TO-DATE and not work on a fresh install that was the SAME EXACT VERSION? It's like you purposely went out of your way to make sure that this method no longer worked, and stealthily added that obstacle in newer versions of your apps.
SO NOW I'M STUCK WITH NO EFFIN WAY TO HAVE PINNED APPS ON THE TASKBAR THAT WORK RIGHT, USING MY APPID METHOD OR YOUR PORTABLEAPPS.COM PLATFORM METHOD. AND IT'S MY FAULT BECAUSE I WANT TO HAVE MY PROGRAMS ON A USB DRIVE?
AND ONCE AGAIN, USING MY SYMBOLIC LINK METHOD I *****CAN***** PIN BOTH 'MOZILLA FIREFOX' AND 'OBS STUDIO' TO THE TASKBAR. THE *****ONLY****** PROBLEM IS THAT THE PINNED 'OBS STUDIO' OPENS UP *****IN THE WRONG PLACE ON THE TASKBAR***** BUT THIS PROBLEM DOESN'T EXIST WITH 'MOZILLA FIREFOX'. THE PINNED 'MOZILLA FIREFOX' DOES OPEN UP IN THE RIGHT PLACE.
First off, Mozilla changed the way Firefox and Thunderbird handle their AppID and report it to Windows a few months back. Previously, it was hard coded to be X:\PathTo\firefox.exe. So, the platform's pin to taskbar feature just used that. Then, in an update, Mozilla changed this to be calculated at runtime programmatically to be a hash of X:\PathTo\firefox.exe. This is when pinning via the platform suddenly stopped working as I wasn't aware of the change. I figured out how Firefox stores this hash in the registry and coded the launcher to set the AppID back to X:\PathTo\firefox.exe so everyone's existing pins would start working again. Unfortunately, this has a side effect. Firefox now stores the setting of whether to auto-install updates in a special file and if you set the AppID to a full path, it prevents Firefox from reading/writing that file locally. This makes Firefox always auto-install updates (a no no for a portable app where an auto-update can leave some bits behind locally). So, I had to change the AppID to something consistent without slashes so it would work for Firefox, the Firefox updater setting, the Firefox Portable launcher, and Windows itself. That solution is to use FirefoxPortable as the AppID. This unfortunately broke all the existing pins from before Mozilla made the change, but this was the most complete solution that would be unlikely to cause issues with local versions later.
Second, we don't hide AppIDs. I don't even know if such a thing is possible. And all our source code is public and open under the GPL. I'm looking at OBS Portable in 7+ Taskbar Tweaker right now and it's working exactly as expected. The displayed AppID is P:\PortableApps\OBSPortable\App\obs-studio\bin\64bit\obs64.exe. This matches up with the app's AppInfo.ini file which has this: BaseAppID64=%BASELAUNCHERPATH%\App\obs-studio\bin\64bit\obs64.exe included. That's why the pin works. We make no changes to AppID other than what I mentioned above with Firefox and Thunderbird, which is out of necessity, and setting a standardized default for Opera and Opera GX in the default profile otherwise it sets a random one. We don't hide AppIDs nor do I even think that is possible.
Third, Microsoft locks out pinning apps from removable drives. That's not something we have control over.
Fourth, symbolic links in Windows are super buggy. I recommend against them as even many Windows APIs don't handle them correctly. The NSIS function to check if a folder is empty, which calls a Windows API, reports that it is empty if it's a symbolic link pointing to a folder with files in it. That's why Firefox and Thunderbird have a custom function included in their source called RMDirIfNotJunction.nsh that I wrote to handle this so it doesn't wipe out folks who have their APPDATA\Mozilla or similar symbolic linked elsewhere.
Lastly, as to why one of your apps can pin and the other can't, I can't tell you. The only thing I can think of is if OBS is running from a symbolic link, maybe it can't properly get its AppID. We don't do anything with its AppID. Maybe Firefox can because it is manually setting its AppID based on the one I have the Firefox Portable launcher set in the registry for it.
Remember, all the source for the PA.c Launcher (used for OBS) and Firefox Portable's custom launcher are available and under the GPL. You're free to analyze it and, if you can figure out what's going on on your specific system, either submit a patch or tell me what's going on and how to work around it. As yours is such a niche case (symbolic linking a USB drive and trying to pin apps based on that), it's not something that I currently have the time or resources to investigate.
Sometimes, the impossible can become possible, if you're awesome!
Fine. I installed OBS Portable onto my D drive (not USB Drive). Happy now?