none
Определение wsp по названию джоба SP2010 RRS feed

  • Вопрос

  • SP2010

    Имеется работающий джоб - как понять, каким решением он был установлен?

    Фичи в СА, либо установленные решения по названиям своим ничего не выдают. Как-то можно по зпросу это определить в PS ?

    8 июня 2015 г. 15:32

Ответы

  • Или сделайте backup всех решений фермы (сохранится в текущий путь PS ):

    (Get-SPFarm).Solutions | ForEach-Object{$var = (Get-Location).Path + "\" + $_.Name; $_.SolutionFile.SaveAs($var)}

    Получите wsp файлы всех решений фермы. И придется вручную распаковать все решения с похожим требуемым именем и найти файл manifest.xml, который содержит:

    <?xml version="1.0" encoding="utf-8"?>
    <Solution xmlns="http://schemas.microsoft.com/sharepoint/" SolutionId="............" SharePointProductVersion="14.0">
      <Assemblies>
        <Assembly Location="НАЗВАНИЕ ФАЙЛА С ТАЙМЕРОМ.dll" DeploymentTarget="GlobalAssemblyCache" />

    Далее в подпапке найдете файл feature.xml и в нем найдете название фичи, которая активирут таймер:

    <?xml version="1.0" encoding="utf-8"?> <Feature xmlns="http://schemas.microsoft.com/sharepoint/"

    ActivateOnDefault="FALSE" Id="....." Scope="WebApplication"

    Title="Название фичи с TimerJob "> <ElementManifests> <ElementManifest Location="TimerJob\Elements.xml" /> </ElementManifests> </Feature>


    Так же получите SolutionID и FeatureID.

    Как то так :)


Все ответы

  • Добрый день,

    просмотрите полный список решений, возможно есть скрытые, которые активируются только через PowerShell.

    Вывести полный список решений:

    Get-SPSolution | Format-Table -Property name, status, deployed, SolutionId

  • Так же посмотрите список всех активированных Features, которые имеют assembly:

    Get-SPFeature | Where-Object { $_.ReceiverClass -ne "" } 


  • Еще как вариант могу предложить сделать поиск в GAC dll с текстом SPJobDefinition или названием вашего таймера, найдете dll-ку с таймером, получите assembly, далее по assembly искать уже solution и feature.

    Другого прямого выхода не вижу.
  • Или сделайте backup всех решений фермы (сохранится в текущий путь PS ):

    (Get-SPFarm).Solutions | ForEach-Object{$var = (Get-Location).Path + "\" + $_.Name; $_.SolutionFile.SaveAs($var)}

    Получите wsp файлы всех решений фермы. И придется вручную распаковать все решения с похожим требуемым именем и найти файл manifest.xml, который содержит:

    <?xml version="1.0" encoding="utf-8"?>
    <Solution xmlns="http://schemas.microsoft.com/sharepoint/" SolutionId="............" SharePointProductVersion="14.0">
      <Assemblies>
        <Assembly Location="НАЗВАНИЕ ФАЙЛА С ТАЙМЕРОМ.dll" DeploymentTarget="GlobalAssemblyCache" />

    Далее в подпапке найдете файл feature.xml и в нем найдете название фичи, которая активирут таймер:

    <?xml version="1.0" encoding="utf-8"?> <Feature xmlns="http://schemas.microsoft.com/sharepoint/"

    ActivateOnDefault="FALSE" Id="....." Scope="WebApplication"

    Title="Название фичи с TimerJob "> <ElementManifests> <ElementManifest Location="TimerJob\Elements.xml" /> </ElementManifests> </Feature>


    Так же получите SolutionID и FeatureID.

    Как то так :)