2012-03-06 2 views
1

Я пытаюсь зарегистрировать новый фильтр с помощью Windows Desktop Search. Идеальный способ достичь этого будет регистрировать новый фильтр с существующим упорной обработчика CLSID. Но этого не может быть сделано, поскольку .html PersistentHandler CLSID, {eec97550-47a9-11cf-b952-00aa0051fe20}, защищен в соответствии с WRP (More about the problem).Добавить новый CLSID в реестр Windows с помощью WiX

Как обходной путь, я пытаюсь создать другой CLSID, который выполняет ту же работу, что и {eec97550-47a9-11cf-b952-00aa0051fe20}.

Это пример кода, за которым я следую. Я новичок в WiX и редактирую реестр Windows.

<File Id="HTMLfilter.DLL"> 
    <Class Id="$(var.CLSID_HtmlIFilter)" Context="InprocServer32" ThreadingModel="both" Description="Html Filter" /> 
</File> 

Может ли кто-нибудь помочь мне в этом отношении;

  • Как создать CLSID, который не связан ни с каким файлом? Поскольку мой новый CLSID выполняет работу вышеупомянутого CLSID, я думаю, что это как это должно быть.

  • Как создать аа подкаталог с именем PersistentAddinsRegistered вместо InprocSever32

Благодаря

ответ

1

Вы можете посмотреть на этой странице here показано, как добавить COM-объекты монтажников

1

I предложите экспортировать выбранную ветвь в файл реестра (Export all or part of the registry to a text file).

Затем с использованием Heat.exe файла реестра урожая и включите его вывод в свой проект.

Это пример

<Fragment> 
    <DirectoryRef Id="TARGETDIR"> 
     <Component Id="cmp6E2CE62C9ADECD355465514E3C8F354E" Guid="PUT-GUID-HERE" KeyPath="yes"> 
      <RegistryKey Key=".ascx\PersistentHandler" Root="HKCR"> 
       <RegistryValue Value="{eec97550-47a9-11cf-b952-00aa0051fe20}" Type="string" /> 
      </RegistryKey> 
     </Component> 
    </DirectoryRef> 
</Fragment>