mirror of
https://github.com/jellyfin/jellyfin.git
synced 2024-09-06 05:47:14 -04:00
updated to use iso mounting nuget package
This commit is contained in:
parent
e25258e1c0
commit
5a3e9e5208
@ -1,97 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{5356AE30-6A6E-4A64-81E3-F76C50595E64}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>MediaBrowser.IsoMounter</RootNamespace>
|
||||
<AssemblyName>MediaBrowser.IsoMounter</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<OutputPath>bin\x86\Debug\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<DebugType>full</DebugType>
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
|
||||
<OutputPath>bin\x86\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<Optimize>true</Optimize>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="pfmclrapi, Version=0.0.0.0, Culture=neutral, processorArchitecture=x86">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\ThirdParty\Pismo\x86\pfmclrapi.dll</HintPath>
|
||||
<EmbedInteropTypes>False</EmbedInteropTypes>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="Microsoft.CSharp" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="..\SharedVersion.cs">
|
||||
<Link>Properties\SharedVersion.cs</Link>
|
||||
</Compile>
|
||||
<Compile Include="PismoIsoManager.cs" />
|
||||
<Compile Include="PismoMount.cs" />
|
||||
<Compile Include="MyPfmFileMountUi.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\MediaBrowser.Common\MediaBrowser.Common.csproj">
|
||||
<Project>{9142eefa-7570-41e1-bfcc-468bb571af2f}</Project>
|
||||
<Name>MediaBrowser.Common</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\MediaBrowser.Model\MediaBrowser.Model.csproj">
|
||||
<Project>{7eeeb4bb-f3e8-48fc-b4c5-70f0fff8329b}</Project>
|
||||
<Name>MediaBrowser.Model</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<PropertyGroup>
|
||||
<PostBuildEvent>if $(ConfigurationName) == Release (
|
||||
xcopy "$(TargetPath)" "$(SolutionDir)\Nuget\dlls\" /y /d /r /i
|
||||
xcopy "$(TargetDir)pfmclrapi.dll" "$(SolutionDir)\Nuget\dlls\" /y /d /r /i
|
||||
)</PostBuildEvent>
|
||||
</PropertyGroup>
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
@ -1,92 +0,0 @@
|
||||
using MediaBrowser.Model.Logging;
|
||||
using System.Security;
|
||||
|
||||
namespace MediaBrowser.IsoMounter
|
||||
{
|
||||
/// <summary>
|
||||
/// Class MyPfmFileMountUi
|
||||
/// </summary>
|
||||
public class MyPfmFileMountUi : PfmFileMountUi
|
||||
{
|
||||
/// <summary>
|
||||
/// The logger
|
||||
/// </summary>
|
||||
private readonly ILogger Logger;
|
||||
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="MyPfmFileMountUi" /> class.
|
||||
/// </summary>
|
||||
/// <param name="logger">The logger.</param>
|
||||
public MyPfmFileMountUi(ILogger logger)
|
||||
{
|
||||
Logger = logger;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Clears the password.
|
||||
/// </summary>
|
||||
public void ClearPassword()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Completes the specified error message.
|
||||
/// </summary>
|
||||
/// <param name="errorMessage">The error message.</param>
|
||||
public void Complete(string errorMessage)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(errorMessage))
|
||||
{
|
||||
Logger.Error("Complete {0}", errorMessage);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Queries the password.
|
||||
/// </summary>
|
||||
/// <param name="prompt">The prompt.</param>
|
||||
/// <param name="count">The count.</param>
|
||||
/// <returns>SecureString.</returns>
|
||||
public SecureString QueryPassword(string prompt, int count)
|
||||
{
|
||||
return new SecureString();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Resumes this instance.
|
||||
/// </summary>
|
||||
public void Resume()
|
||||
{
|
||||
Logger.Debug("Resume");
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Starts this instance.
|
||||
/// </summary>
|
||||
public void Start()
|
||||
{
|
||||
Logger.Debug("Start");
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Statuses the specified data.
|
||||
/// </summary>
|
||||
/// <param name="data">The data.</param>
|
||||
/// <param name="endOfLine">if set to <c>true</c> [end of line].</param>
|
||||
public void Status(string data, bool endOfLine)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(data))
|
||||
{
|
||||
Logger.Debug("Status {0}", data);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Suspends this instance.
|
||||
/// </summary>
|
||||
public void Suspend()
|
||||
{
|
||||
Logger.Debug("Suspend");
|
||||
}
|
||||
}
|
||||
}
|
@ -1,214 +0,0 @@
|
||||
using MediaBrowser.Common.IO;
|
||||
using MediaBrowser.Model.Logging;
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace MediaBrowser.IsoMounter
|
||||
{
|
||||
/// <summary>
|
||||
/// Class IsoManager
|
||||
/// </summary>
|
||||
public class PismoIsoManager : IIsoManager
|
||||
{
|
||||
/// <summary>
|
||||
/// The mount semaphore - limit to four at a time.
|
||||
/// </summary>
|
||||
private readonly SemaphoreSlim _mountSemaphore = new SemaphoreSlim(4,4);
|
||||
|
||||
/// <summary>
|
||||
/// The PFM API
|
||||
/// </summary>
|
||||
private PfmApi _pfmApi;
|
||||
/// <summary>
|
||||
/// The _PFM API initialized
|
||||
/// </summary>
|
||||
private bool _pfmApiInitialized;
|
||||
/// <summary>
|
||||
/// The _PFM API sync lock
|
||||
/// </summary>
|
||||
private object _pfmApiSyncLock = new object();
|
||||
/// <summary>
|
||||
/// Gets the display prefs.
|
||||
/// </summary>
|
||||
/// <value>The display prefs.</value>
|
||||
private PfmApi PfmApi
|
||||
{
|
||||
get
|
||||
{
|
||||
LazyInitializer.EnsureInitialized(ref _pfmApi, ref _pfmApiInitialized, ref _pfmApiSyncLock, () =>
|
||||
{
|
||||
var err = PfmStatic.InstallCheck();
|
||||
|
||||
if (err != PfmInst.installed)
|
||||
{
|
||||
throw new Exception("Pismo File Mount Audit Package is not installed");
|
||||
}
|
||||
|
||||
PfmApi pfmApi;
|
||||
|
||||
err = PfmStatic.ApiFactory(out pfmApi);
|
||||
|
||||
if (err != 0)
|
||||
{
|
||||
throw new IOException("Unable to open PFM Api. Pismo File Mount Audit Package is probably not installed.");
|
||||
}
|
||||
|
||||
return pfmApi;
|
||||
});
|
||||
return _pfmApi;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The _has initialized
|
||||
/// </summary>
|
||||
private bool _hasInitialized;
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the logger.
|
||||
/// </summary>
|
||||
/// <value>The logger.</value>
|
||||
private ILogger Logger { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="PismoIsoManager" /> class.
|
||||
/// </summary>
|
||||
/// <param name="logger">The logger.</param>
|
||||
public PismoIsoManager(ILogger logger)
|
||||
{
|
||||
Logger = logger;
|
||||
|
||||
_myPfmFileMountUi = new MyPfmFileMountUi(Logger);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The _my PFM file mount UI
|
||||
/// </summary>
|
||||
private readonly MyPfmFileMountUi _myPfmFileMountUi;
|
||||
|
||||
/// <summary>
|
||||
/// Mounts the specified iso path.
|
||||
/// </summary>
|
||||
/// <param name="isoPath">The iso path.</param>
|
||||
/// <param name="cancellationToken">The cancellation token.</param>
|
||||
/// <param name="visibleToAllProcesses">if set to <c>true</c> [visible to all processes].</param>
|
||||
/// <returns>IsoMount.</returns>
|
||||
/// <exception cref="System.ArgumentNullException">isoPath</exception>
|
||||
/// <exception cref="System.IO.IOException">Unable to create mount.</exception>
|
||||
public async Task<IIsoMount> Mount(string isoPath, CancellationToken cancellationToken, bool visibleToAllProcesses = true)
|
||||
{
|
||||
if (string.IsNullOrEmpty(isoPath))
|
||||
{
|
||||
throw new ArgumentNullException("isoPath");
|
||||
}
|
||||
|
||||
PfmFileMount mount;
|
||||
var err = PfmApi.FileMountCreate(out mount);
|
||||
|
||||
if (err != 0)
|
||||
{
|
||||
throw new IOException("Unable to create mount for " + isoPath);
|
||||
}
|
||||
|
||||
_hasInitialized = true;
|
||||
|
||||
var fmp = new PfmFileMountCreateParams { };
|
||||
|
||||
fmp.ui = _myPfmFileMountUi;
|
||||
|
||||
fmp.fileMountFlags |= PfmFileMountFlag.inProcess;
|
||||
|
||||
if (visibleToAllProcesses)
|
||||
{
|
||||
fmp.visibleProcessId = PfmVisibleProcessId.all;
|
||||
}
|
||||
|
||||
fmp.mountFileName = isoPath;
|
||||
|
||||
// unc only
|
||||
fmp.mountFlags |= PfmMountFlag.uncOnly;
|
||||
fmp.mountFlags |= PfmMountFlag.noShellNotify;
|
||||
fmp.mountFlags |= PfmMountFlag.readOnly;
|
||||
|
||||
Logger.Info("Mounting {0}", isoPath);
|
||||
|
||||
await _mountSemaphore.WaitAsync(cancellationToken).ConfigureAwait(false);
|
||||
|
||||
err = mount.Start(fmp);
|
||||
|
||||
if (err != 0)
|
||||
{
|
||||
_mountSemaphore.Release();
|
||||
mount.Dispose();
|
||||
throw new IOException("Unable to start mount for " + isoPath);
|
||||
}
|
||||
|
||||
err = mount.WaitReady();
|
||||
|
||||
if (err != 0)
|
||||
{
|
||||
_mountSemaphore.Release();
|
||||
mount.Dispose();
|
||||
throw new IOException("Unable to start mount for " + isoPath);
|
||||
}
|
||||
|
||||
return new PismoMount(mount, isoPath, this, Logger);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
|
||||
/// </summary>
|
||||
public void Dispose()
|
||||
{
|
||||
Dispose(true);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Releases unmanaged and - optionally - managed resources.
|
||||
/// </summary>
|
||||
/// <param name="dispose"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
|
||||
protected virtual void Dispose(bool dispose)
|
||||
{
|
||||
if (dispose)
|
||||
{
|
||||
if (_hasInitialized)
|
||||
{
|
||||
Logger.Info("Disposing PfmPapi");
|
||||
_pfmApi.Dispose();
|
||||
|
||||
Logger.Info("PfmStatic.ApiUnload");
|
||||
PfmStatic.ApiUnload();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets a value indicating whether this instance can mount.
|
||||
/// </summary>
|
||||
/// <param name="path">The path.</param>
|
||||
/// <returns><c>true</c> if this instance can mount the specified path; otherwise, <c>false</c>.</returns>
|
||||
/// <value><c>true</c> if this instance can mount; otherwise, <c>false</c>.</value>
|
||||
public bool CanMount(string path)
|
||||
{
|
||||
try
|
||||
{
|
||||
return string.Equals(Path.GetExtension(path), ".iso", StringComparison.OrdinalIgnoreCase) && PfmApi != null;
|
||||
}
|
||||
catch
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Called when [unmount].
|
||||
/// </summary>
|
||||
/// <param name="mount">The mount.</param>
|
||||
internal void OnUnmount(PismoMount mount)
|
||||
{
|
||||
_mountSemaphore.Release();
|
||||
}
|
||||
}
|
||||
}
|
@ -1,94 +0,0 @@
|
||||
using MediaBrowser.Common.IO;
|
||||
using MediaBrowser.Model.Logging;
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.IsoMounter
|
||||
{
|
||||
/// <summary>
|
||||
/// Class IsoMount
|
||||
/// </summary>
|
||||
internal class PismoMount : IIsoMount
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the iso path.
|
||||
/// </summary>
|
||||
/// <value>The iso path.</value>
|
||||
public string IsoPath { get; internal set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets the mounted path.
|
||||
/// </summary>
|
||||
/// <value>The mounted path.</value>
|
||||
public string MountedPath { get; internal set; }
|
||||
|
||||
/// <summary>
|
||||
/// The PFM file mount
|
||||
/// </summary>
|
||||
private PfmFileMount _pfmFileMount;
|
||||
|
||||
/// <summary>
|
||||
/// The _iso manager
|
||||
/// </summary>
|
||||
private readonly PismoIsoManager _isoManager;
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the logger.
|
||||
/// </summary>
|
||||
/// <value>The logger.</value>
|
||||
private ILogger Logger { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Prevents a default instance of the <see cref="PismoMount" /> class from being created.
|
||||
/// </summary>
|
||||
/// <param name="mount">The mount.</param>
|
||||
/// <param name="isoPath">The iso path.</param>
|
||||
/// <param name="isoManager">The iso manager.</param>
|
||||
/// <param name="logger">The logger.</param>
|
||||
internal PismoMount(PfmFileMount mount, string isoPath, PismoIsoManager isoManager, ILogger logger)
|
||||
{
|
||||
_pfmFileMount = mount;
|
||||
IsoPath = isoPath;
|
||||
_isoManager = isoManager;
|
||||
Logger = logger;
|
||||
|
||||
MountedPath = mount.GetMount().GetUncName();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
|
||||
/// </summary>
|
||||
public void Dispose()
|
||||
{
|
||||
Dispose(true);
|
||||
GC.SuppressFinalize(this);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Releases unmanaged and - optionally - managed resources.
|
||||
/// </summary>
|
||||
/// <param name="dispose"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
|
||||
protected virtual void Dispose(bool dispose)
|
||||
{
|
||||
UnMount();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Uns the mount.
|
||||
/// </summary>
|
||||
private void UnMount()
|
||||
{
|
||||
if (_pfmFileMount != null)
|
||||
{
|
||||
Logger.Info("Unmounting {0}", IsoPath);
|
||||
|
||||
_pfmFileMount.Cancel();
|
||||
_pfmFileMount.Detach();
|
||||
|
||||
_isoManager.OnUnmount(this);
|
||||
|
||||
_pfmFileMount.Dispose();
|
||||
_pfmFileMount = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -1,30 +0,0 @@
|
||||
using System.Reflection;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
// General Information about an assembly is controlled through the following
|
||||
// set of attributes. Change these attribute values to modify the information
|
||||
// associated with an assembly.
|
||||
[assembly: AssemblyTitle("MediaBrowser.IsoMounter")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("MediaBrowser.IsoMounter")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2013")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// Setting ComVisible to false makes the types in this assembly not visible
|
||||
// to COM components. If you need to access a type in this assembly from
|
||||
// COM, set the ComVisible attribute to true on that type.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
||||
[assembly: Guid("891a8cbf-e9d1-426a-a2c2-1e5761e2f3cf")]
|
||||
|
||||
// Version information for an assembly consists of the following four values:
|
||||
//
|
||||
// Major Version
|
||||
// Minor Version
|
||||
// Build Number
|
||||
// Revision
|
||||
//
|
@ -1,6 +1,4 @@
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
using MediaBrowser.Common.Events;
|
||||
using MediaBrowser.Common.Events;
|
||||
using MediaBrowser.Common.Extensions;
|
||||
using MediaBrowser.Controller;
|
||||
using MediaBrowser.Controller.Configuration;
|
||||
@ -9,9 +7,10 @@ using MediaBrowser.Controller.Library;
|
||||
using MediaBrowser.Model.Connectivity;
|
||||
using MediaBrowser.Model.Logging;
|
||||
using System;
|
||||
using System.Collections.Concurrent;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
|
@ -123,10 +123,18 @@
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\DotNetZip.1.9.1.8\lib\net20\Ionic.Zip.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="MediaBrowser.IsoMounter, Version=1.0.4827.21973, Culture=neutral, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\MediaBrowser.IsoMounting.3.0.51\lib\net45\MediaBrowser.IsoMounter.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="NLog, Version=2.0.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\NLog.2.0.0.2000\lib\net40\NLog.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="pfmclrapi, Version=0.0.0.0, Culture=neutral, processorArchitecture=x86">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\MediaBrowser.IsoMounting.3.0.51\lib\net45\pfmclrapi.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="SimpleInjector, Version=2.0.0.0, Culture=neutral, PublicKeyToken=984cb50dea722e99, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\SimpleInjector.2.0.0-beta5\lib\net40-client\SimpleInjector.dll</HintPath>
|
||||
@ -264,10 +272,6 @@
|
||||
<Project>{17e1f4e6-8abd-4fe5-9ecf-43d4b6087ba2}</Project>
|
||||
<Name>MediaBrowser.Controller</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\MediaBrowser.IsoMounter\MediaBrowser.IsoMounter.csproj">
|
||||
<Project>{5356ae30-6a6e-4a64-81e3-f76c50595e64}</Project>
|
||||
<Name>MediaBrowser.IsoMounter</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\MediaBrowser.Model\MediaBrowser.Model.csproj">
|
||||
<Project>{7eeeb4bb-f3e8-48fc-b4c5-70f0fff8329b}</Project>
|
||||
<Name>MediaBrowser.Model</Name>
|
||||
|
@ -2,6 +2,7 @@
|
||||
<packages>
|
||||
<package id="DotNetZip" version="1.9.1.8" targetFramework="net45" />
|
||||
<package id="Hardcodet.Wpf.TaskbarNotification" version="1.0.4.0" targetFramework="net45" />
|
||||
<package id="MediaBrowser.IsoMounting" version="3.0.51" targetFramework="net45" />
|
||||
<package id="NLog" version="2.0.0.2000" targetFramework="net45" />
|
||||
<package id="SimpleInjector" version="2.0.0-beta5" targetFramework="net45" />
|
||||
<package id="System.Data.SQLite" version="1.0.84.0" targetFramework="net45" />
|
||||
|
@ -27,8 +27,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".nuget (2)", ".nuget (2)",
|
||||
.nuget\NuGet.targets = .nuget\NuGet.targets
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MediaBrowser.IsoMounter", "MediaBrowser.IsoMounter\MediaBrowser.IsoMounter.csproj", "{5356AE30-6A6E-4A64-81E3-F76C50595E64}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MediaBrowser.Installer", "MediaBrowser.Installer\MediaBrowser.Installer.csproj", "{3879F78A-D6F6-45E5-B2A8-D8DCF2DABB74}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MediaBrowser.Common.Implementations", "MediaBrowser.Common.Implementations\MediaBrowser.Common.Implementations.csproj", "{C4D2573A-3FD3-441F-81AF-174AC4CD4E1D}"
|
||||
@ -147,20 +145,6 @@ Global
|
||||
{5624B7B5-B5A7-41D8-9F10-CC5611109619}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{5624B7B5-B5A7-41D8-9F10-CC5611109619}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{5624B7B5-B5A7-41D8-9F10-CC5611109619}.Release|x86.Build.0 = Release|Any CPU
|
||||
{5356AE30-6A6E-4A64-81E3-F76C50595E64}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{5356AE30-6A6E-4A64-81E3-F76C50595E64}.Debug|Any CPU.Build.0 = Debug|x86
|
||||
{5356AE30-6A6E-4A64-81E3-F76C50595E64}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{5356AE30-6A6E-4A64-81E3-F76C50595E64}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{5356AE30-6A6E-4A64-81E3-F76C50595E64}.Debug|Win32.ActiveCfg = Debug|Any CPU
|
||||
{5356AE30-6A6E-4A64-81E3-F76C50595E64}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{5356AE30-6A6E-4A64-81E3-F76C50595E64}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{5356AE30-6A6E-4A64-81E3-F76C50595E64}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{5356AE30-6A6E-4A64-81E3-F76C50595E64}.Release|Any CPU.Build.0 = Release|x86
|
||||
{5356AE30-6A6E-4A64-81E3-F76C50595E64}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{5356AE30-6A6E-4A64-81E3-F76C50595E64}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{5356AE30-6A6E-4A64-81E3-F76C50595E64}.Release|Win32.ActiveCfg = Release|Any CPU
|
||||
{5356AE30-6A6E-4A64-81E3-F76C50595E64}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{5356AE30-6A6E-4A64-81E3-F76C50595E64}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{3879F78A-D6F6-45E5-B2A8-D8DCF2DABB74}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{3879F78A-D6F6-45E5-B2A8-D8DCF2DABB74}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{3879F78A-D6F6-45E5-B2A8-D8DCF2DABB74}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
@ -221,4 +205,7 @@ Global
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(Performance) = preSolution
|
||||
HasPerformanceSessions = true
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
|
@ -2,7 +2,7 @@
|
||||
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
|
||||
<metadata>
|
||||
<id>MediaBrowser.Common.Internal</id>
|
||||
<version>3.0.51</version>
|
||||
<version>3.0.52</version>
|
||||
<title>MediaBrowser.Common.Internal</title>
|
||||
<authors>Luke</authors>
|
||||
<owners>ebr,Luke,scottisafool</owners>
|
||||
@ -12,7 +12,7 @@
|
||||
<description>Contains common components shared by Media Browser Theatre and Media Browser Server. Not intended for plugin developer consumption.</description>
|
||||
<copyright>Copyright © Media Browser 2013</copyright>
|
||||
<dependencies>
|
||||
<dependency id="MediaBrowser.Common" version="3.0.51" />
|
||||
<dependency id="MediaBrowser.Common" version="3.0.52" />
|
||||
<dependency id="NLog" version="2.0.0.2000" />
|
||||
<dependency id="ServiceStack.Text" version="3.9.38" />
|
||||
<dependency id="protobuf-net" version="2.0.0.621" />
|
||||
@ -20,8 +20,6 @@
|
||||
</metadata>
|
||||
<files>
|
||||
<file src="dlls\MediaBrowser.Common.Implementations.dll" target="lib\net45\MediaBrowser.Common.Implementations.dll" />
|
||||
<file src="dlls\MediaBrowser.IsoMounter.dll" target="lib\net45\MediaBrowser.IsoMounter.dll" />
|
||||
<file src="dlls\Mediabrowser.PluginSecurity.dll" target="lib\net45\Mediabrowser.PluginSecurity.dll" />
|
||||
<file src="dlls\pfmclrapi.dll" target="lib\net45\pfmclrapi.dll" />
|
||||
</files>
|
||||
</package>
|
@ -2,7 +2,7 @@
|
||||
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
|
||||
<metadata>
|
||||
<id>MediaBrowser.Common</id>
|
||||
<version>3.0.51</version>
|
||||
<version>3.0.52</version>
|
||||
<title>MediaBrowser.Common</title>
|
||||
<authors>Media Browser Team</authors>
|
||||
<owners>ebr,Luke,scottisafool</owners>
|
||||
|
@ -2,7 +2,7 @@
|
||||
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
|
||||
<metadata>
|
||||
<id>MediaBrowser.Server.Core</id>
|
||||
<version>3.0.51</version>
|
||||
<version>3.0.52</version>
|
||||
<title>Media Browser.Server.Core</title>
|
||||
<authors>Media Browser Team</authors>
|
||||
<owners>ebr,Luke,scottisafool</owners>
|
||||
@ -12,7 +12,7 @@
|
||||
<description>Contains core components required to build plugins for Media Browser Server.</description>
|
||||
<copyright>Copyright © Media Browser 2013</copyright>
|
||||
<dependencies>
|
||||
<dependency id="MediaBrowser.Common" version="3.0.51" />
|
||||
<dependency id="MediaBrowser.Common" version="3.0.52" />
|
||||
</dependencies>
|
||||
</metadata>
|
||||
<files>
|
||||
|
Loading…
Reference in New Issue
Block a user