Add assembly list to ext. tool Attribute, allows shipping dependencies
DBMan works again
This commit is contained in:
parent
2c0d6dc32e
commit
8c005e6ffa
|
@ -9,7 +9,7 @@ using Community.CsharpSqlite.SQLiteClient;
|
|||
|
||||
namespace BizHawk.DBManTool
|
||||
{
|
||||
[ExternalTool("DBMan", Description = "DB Manager")]
|
||||
[ExternalTool("DBMan", Description = "DB Manager", LoadAssemblyFiles = new[] { "CSharp-SQLite.dll" })]
|
||||
public class CustomMainForm : Form, IExternalToolForm
|
||||
{
|
||||
public CustomMainForm()
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
<GenerateResourceUsePreserializedResources>true</GenerateResourceUsePreserializedResources>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<NET48ExternalToolFormDependency Include="$(ProjectDir)CSharp-SQLite.dll" />
|
||||
<Reference Include="CSharp-SQLite"
|
||||
HintPath="$(ProjectDir)CSharp-SQLite.dll"
|
||||
Private="true" />
|
||||
|
|
|
@ -29,5 +29,6 @@
|
|||
</ItemGroup>
|
||||
<Target Name="PostBuild" AfterTargets="PostBuildEvent">
|
||||
<Copy SourceFiles="$(OutputPath)$(MSBuildProjectName).dll" DestinationFolder="$(ProjectDir)../../output/ExternalTools" />
|
||||
<Copy SourceFiles="@(NET48ExternalToolFormDependency)" DestinationFolder="$(ProjectDir)../../output/ExternalTools" />
|
||||
</Target>
|
||||
</Project>
|
||||
|
|
|
@ -98,6 +98,8 @@ namespace BizHawk.Client.Common
|
|||
{
|
||||
public string Description { get; set; }
|
||||
|
||||
public string[] LoadAssemblyFiles { get; set; }
|
||||
|
||||
public readonly string Name;
|
||||
|
||||
public ExternalToolAttribute(string name)
|
||||
|
|
|
@ -95,6 +95,10 @@ namespace BizHawk.Client.EmuHawk
|
|||
if (applicabilityAttrs.Count > 1) throw new ExternalToolApplicabilityAttributeBase.DuplicateException();
|
||||
|
||||
var toolAttribute = allAttrs.OfType<ExternalToolAttribute>().First();
|
||||
if (toolAttribute.LoadAssemblyFiles != null)
|
||||
{
|
||||
foreach (var depFilename in toolAttribute.LoadAssemblyFiles) Assembly.LoadFrom($"ExternalTools/{depFilename}");
|
||||
}
|
||||
var embeddedIconAttr = allAttrs.OfType<ExternalToolEmbeddedIconAttribute>().FirstOrDefault();
|
||||
if (embeddedIconAttr != null)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue