How to Hide Transitive Files in Aspose.Slides.NET6.CrossPlatform?

After referencing “Aspose.Slides.NET6.CrossPlatform” 25.5.0 nuget package in .NET project it copies some libraries from nuget to output directory of the project (five libraries, to be precise).

Libraries examples:
aspose.slides.drawing.capi_vc14x64.dll
libaspose.slides.drawing.capi_x86_64_libstdcpp_libc2.23.so

Copying is done in the file “Aspose.Slides.NET6.CrossPlatform.targets” from the “buildTransitive” folder in nuget package. File contents:

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <ItemGroup Condition="'$(TargetFramework)' == 'net6.0' Or '$(TargetFramework)' == 'net7.0' Or '$(TargetFramework)' == 'net8.0' Or '$(TargetFramework)' == 'net9.0'">
        <None Include="$(MSBuildThisFileDirectory)\..\net6.0_native\aspose.slides.drawing.capi_vc14x86.dll">
            <Link>aspose.slides.drawing.capi_vc14x86.dll</Link>
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </None>
        <None Include="$(MSBuildThisFileDirectory)\..\net6.0_native\aspose.slides.drawing.capi_vc14x64.dll">
            <Link>aspose.slides.drawing.capi_vc14x64.dll</Link>
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </None>        
        <None Include="$(MSBuildThisFileDirectory)\..\net6.0_native\libaspose.slides.drawing.capi_x86_64_libstdcpp_libc2.23.so">
            <Link>libaspose.slides.drawing.capi_x86_64_libstdcpp_libc2.23.so</Link>
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </None>
        <None Include="$(MSBuildThisFileDirectory)\..\net6.0_native\libaspose.slides.drawing.capi_appleclang_x86_64.dylib">
            <Link>libaspose.slides.drawing.capi_appleclang_x86_64.dylib</Link>
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </None> 
        <None Include="$(MSBuildThisFileDirectory)\..\net6.0_native\libaspose.slides.drawing.capi_appleclang_arm64.dylib">
            <Link>libaspose.slides.drawing.capi_appleclang_arm64.dylib</Link>
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </None>        
    </ItemGroup>
</Project>

In our scenario the project “A” that refrences “Aspose.Slides.NET6.CrossPlatform” is packed to nuget and then is referenced in other projects. So every one of this projects ends up showing these libraries in its file-tree in Visual Studio.

Could you please modify .targets file by adding Visible=False property to copied libraries? Like so:

<None Include="$(MSBuildThisFileDirectory)\..\net6.0_native\libaspose.slides.drawing.capi_appleclang_arm64.dylib">
            <Link>libaspose.slides.drawing.capi_appleclang_arm64.dylib</Link>
            <Visible>False</Visible>
            <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
        </None> 

Thank you for your help.

@NOborin,
Thank you for contacting free support.

We have opened the following new ticket(s) in our internal issue tracking system and will consider your request according to the terms mentioned in Free Support Policies.

Issue ID(s): SLIDESNET-44977

You can obtain Paid Support Services if you need support on a priority basis, along with the direct access to our Paid Support management team.