Log in

View Full Version : Is there portable Avisynth without need to reg?


jonnysun
15th March 2008, 17:25
I've seen from this thread
http://forum.doom9.org/showthread.php?t=121588

that somebody actually made a portable package. However, sometimes we don't have the authority to change the registry files or system files (not the administrator of PC). Is it possible to have a portable avisynth without register to the system? Something like putting the toolkits in the same directory and it will work. ( I don''t know).

IanB
15th March 2008, 22:27
You cannot use the AVIFIle interface to Avisynth without adding the required keys to the CLSID part of the registry.

To use the C++ or C API interfaces you just need a local copy of avisynth.dll accesible by the target application.

foxyshadis
20th March 2008, 16:51
You can always try adding them to the HKCU CLSID key, see if that has any effect.

Richard Berg
24th March 2008, 05:30
That's correct, the COM loader running as a normal process will see a merged HKLM/HKCU hive. (Note: HKCR is a subset of HKCU).

However, the reverse is not true. Admin processes will not see HKCU keys. Apparently they consider it a security boundary (http://blogs.msdn.com/junfeng/archive/2006/09/05/742295.aspx).

vlada
26th March 2008, 03:16
Have anyone tried it? What would then be the .reg file to use with a user account? The one which needs admin rights looks like this:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\CLSID\{E6D6B700-124D-11D4-86F3-DB80AFD98778}]
@="AviSynth"

[HKEY_CLASSES_ROOT\CLSID\{E6D6B700-124D-11D4-86F3-DB80AFD98778}\InProcServer32]
@="T:\\utility\\avisynth\\AviSynth.dll"
"ThreadingModel"="Apartment"

[HKEY_CLASSES_ROOT\Media Type\Extensions\.avs]
@=""
"Source Filter"="{D3588AB0-0781-11CE-B03A-0020AF0BA770}"

[HKEY_CLASSES_ROOT\AVIFile\Extensions\AVS]
@="{E6D6B700-124D-11D4-86F3-DB80AFD98778}"

[HKEY_CLASSES_ROOT\avs_auto_file]
@="AviSynth Autoload Script"

[HKEY_CLASSES_ROOT\avs_auto_file\DefaultIcon]
@="T:\\utility\\avisynth\\AviSynth.dll,0"

[HKEY_CLASSES_ROOT\avsfile]
@="AviSynth Script"

[HKEY_CLASSES_ROOT\avsfile\DefaultIcon]
@="T:\\utility\\avisynth\\AviSynth.dll,0"

[HKEY_LOCAL_MACHINE\SOFTWARE\Avisynth]
"plugindir2_5"="T:\\utility\\avisynth\\plugins"

ezb
13th May 2009, 10:57
You can always try adding them to the HKCU CLSID key, see if that has any effect.

Hi,

I tried the following:


Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\CLSID\{E6D6B700-124D-11D4-86F3-DB80AFD98778}]
@="AviSynth"

[HKEY_CURRENT_USER\CLSID\{E6D6B700-124D-11D4-86F3-DB80AFD98778}\InProcServer32]
@="D:\\userName\\avisynth_2_5\\AviSynth.dll"
"ThreadingModel"="Apartment"

[HKEY_CURRENT_USER\Media Type\Extensions\.avs]
@=""
"Source Filter"="{D3588AB0-0781-11CE-B03A-0020AF0BA770}"

[HKEY_CURRENT_USER\AVIFile\Extensions\AVS]
@="{E6D6B700-124D-11D4-86F3-DB80AFD98778}"

[HKEY_CURRENT_USER\avs_auto_file]
@="AviSynth Autoload Script"

[HKEY_CURRENT_USER\avs_auto_file\DefaultIcon]
@="D:\\userName\\avisynth_2_5\\AviSynth.dll,0"

[HKEY_CURRENT_USER\avsfile]
@="AviSynth Script"

[HKEY_CURRENT_USER\avsfile\DefaultIcon]
@="D:\\userName\\avisynth_2_5\\AviSynth.dll,0"

[HKEY_CURRENT_USER\SOFTWARE\Avisynth]
"plugindir2_5"="D:\\userName\\avisynth_2_5\\plugins"


But it does not seem to work. In particular, x264 fails on a .avs file when using AVIFileOpen() with error REGDB_E_CLASSNOTREG (i.e., handler for .avs not found in registry), and megui does not detect avisynth on start. I'm using XP, and the keys ended up in HKEY_USERS and do not show up in HKEY_CURRENT_USER.

Any ideas on this?

Thanks a lot!

Best regards,

Eduardo