Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
FireFox portable and FireFox functions (FirefoxGetTabs, ..)
#1
I might have overlooked something completely but almost all FireFox oriented functions only work in the installed version of FireFox: FirefoxSelectTab , FirefoxGetTabs , FirefoxGetLinks,...etc

If I install the firefox and then use the portable version of firefox, all the QM Firefox functions work.
Is there a way to make the functions work with portable version of Firefox?
(Change registry values? , ...)
I tried copying the portable version to the "Program Files" directory but the QM firefox functions didn't work.
I am using QM 2.3.3.7 Portable and I have the same issue when using the installed version of QM.

I guess this problem lies deep within system settings regarding the OS, QM and Firefox and thus it can only be resolved by using the installed version of Firefox. I thought I ask anyway, in the very small chance this can be resolved...
#2
Thank you.

Macro Firefox portable install registry values for QM functions
Code:
Copy      Help
;/exe 2

;Acc.FindFF and some other QM functions don't work with portable Firefox, unless non-portable version is installed.
;To fix it, need to set some registry values that don't exist if Firefox is not installed. This macro does it.
;Note: in portable QM this macro probably will need UAC consent, because it must run as Administrator.

;Registry keys
str k1="Interface\{1814CEEB-49E2-407F-AF99-FA755A7D2607}\ProxyStubClsid32"
str k2="CLSID\{0D68D6D0-D93D-4D08-A30D-F00DD1F45B24}\InProcServer32"

;Is Firefox installed?
if rget(_s "" k1 HKEY_CLASSES_ROOT) and rget(_s "" k2 HKEY_CLASSES_ROOT) and dir(_s)
,end "The Firefox registry key already exists and QM Firefox functions should work. This macro could damage existing settings."

;We need AccessibleMarshal.dll path. It's in Firefox folder.
str ff="D:\PortableApps\FirefoxPortable\App\Firefox\AccessibleMarshal.dll"
int drive found; for(drive 'D' 'Z'+1) ff[0]=drive; if(dir(ff)) found=1; break
if(!found) end "Portable Firefox not found. Please edit the 'str ff...' line in this macro."

;Create Firefox registry keys and set values
if !rset("{0D68D6D0-D93D-4D08-A30D-F00DD1F45B24}" "" k1 HKEY_CLASSES_ROOT) or !rset(ff "" k2 HKEY_CLASSES_ROOT)
,end iif(IsUserAdmin ERR_FAILED ERR_ADMIN)
rset "Both" "ThreadingModel" k2
out "Fixed. QM Firefox functions now should work."

;BEGIN PROJECT
;main_function  Firefox portable install registry values for QM functions
;exe_file  $my qm$\FirefoxRegFix.qmm
;flags  6
;guid  {706CD11E-878C-453E-B1CD-69078872E126}
;END PROJECT

Also.
Portable Firefox by default runs as 64-bit process. Then QM functions don't work. To run 32-bit portable Firefox, delete or rename the portable Firefox64 folder, or edit ini file: http://portableapps.com/support/firefox ... le#32and64
#3
Yes this works!!!

THANK YOU!!!


Forum Jump:


Users browsing this thread: 1 Guest(s)