adoconnection / SevenZipExtractor

C# wrapper for 7z.dll
MIT License
306 stars 83 forks source link

More user-friendly 7z.dll copy #10

Closed ied206 closed 6 years ago

ied206 commented 7 years ago

Currently, SevenZipExtractor nuget package add 7z-x64.dll and 7z-x86.dll as a content to user projects.
However, they are not set to Copy Always automatically, which impacts user experience and disturb auto testing with CI (such as AppVeyor).

Inspried by System.Data.SQLite.Core, this pull request injects SevenZipExtractor.targets MSBuild scripts to nuget package. The script will automatically copy 7z.dll into $(OutDir), improving user experience.

If a user does not want to copy of embedded 7z.dll, creating empty file named SevenZipExtractor.Dll.Exclude in project directory will disable this feature.

Note

I changed 7z-x86.dll, 7z-x64.dll to x86\7z.dll, x64\7z.dll to follow System.Data.SQLite.Core's convention. If you don't want to change dll's location, futher job with SevenZipExtractor.targets is necessary.

adoconnection commented 6 years ago

Hi, sorry for delay, I'm having busy days right now. I will review and merge asap

adoconnection commented 6 years ago

Thanks, this behavior is much better indeed. nuget 1.0.10 ready

qwqcode commented 6 years ago

Thanks a lot! It really comes in handy! 万分感谢 ヽ(≧∀≦)ノ