IconExtractor.dll 1.0.2

IconExtractor/IconUtil Library for .NET

Suggested Alternatives

WinCopies.IconExtractor

There is a newer prerelease version of this package available.
See the version list below for details.
Install-Package IconExtractor.dll -Version 1.0.2
dotnet add package IconExtractor.dll --version 1.0.2
<PackageReference Include="IconExtractor.dll" Version="1.0.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add IconExtractor.dll --version 1.0.2
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

IconExtractor

Icon Extractor Library for .NET

http://www.codeproject.com/Articles/26824/Extract-icons-from-EXE-or-DLL-files

Extract all the variations of an icon from .DLL/.EXE, including the ones ExtractIconEx() can't extract.

Usage

First, add a reference to IconExtractor.dll to your .NET project. Then...

using System;
using System.Drawing;
using TsudaKageyu;

// -----------------------------------------------------------------------------
// Usage of IconExtractor class:

// Construct an IconExtractor object with a file.

IconExtractor ie = new IconExtractor(@"D:\sample.exe");

// Get the full name of the associated file.

string fileName = ie.FileName;

// Get the count of icons in the associated file.

int iconCount = ie.Count;

// Extract icons individually.

Icon icon0 = ie.GetIcon(0);
Icon icon1 = ie.GetIcon(1);

// Save icons individually.

using (var fs = File.OpenWrite(@"D:\sample0.ico"))
{
    ie.Save(0, fs);
}

// Extract all the icons in one go.

Icon[] allIcons = ie.GetAllIcons();

// -----------------------------------------------------------------------------
// Usage of IconUtil class:

// Split the variations of icon0 into separate icon objects.

Icon[] splitIcons = IconUtil.SplitIcon(icon0);

// Convert an icon into bitmap. Unlike Icon.ToBitmap() it preserves the transparency.

Bitmap bitmap = IconUtil.ToBitmap(splitIcon[1]);

// Get the bit count of an icon.

int bitCount = IconUtil.GetBitCount(splitIcon[2]);

IconExtractor

Icon Extractor Library for .NET

http://www.codeproject.com/Articles/26824/Extract-icons-from-EXE-or-DLL-files

Extract all the variations of an icon from .DLL/.EXE, including the ones ExtractIconEx() can't extract.

Usage

First, add a reference to IconExtractor.dll to your .NET project. Then...

using System;
using System.Drawing;
using TsudaKageyu;

// -----------------------------------------------------------------------------
// Usage of IconExtractor class:

// Construct an IconExtractor object with a file.

IconExtractor ie = new IconExtractor(@"D:\sample.exe");

// Get the full name of the associated file.

string fileName = ie.FileName;

// Get the count of icons in the associated file.

int iconCount = ie.Count;

// Extract icons individually.

Icon icon0 = ie.GetIcon(0);
Icon icon1 = ie.GetIcon(1);

// Save icons individually.

using (var fs = File.OpenWrite(@"D:\sample0.ico"))
{
    ie.Save(0, fs);
}

// Extract all the icons in one go.

Icon[] allIcons = ie.GetAllIcons();

// -----------------------------------------------------------------------------
// Usage of IconUtil class:

// Split the variations of icon0 into separate icon objects.

Icon[] splitIcons = IconUtil.SplitIcon(icon0);

// Convert an icon into bitmap. Unlike Icon.ToBitmap() it preserves the transparency.

Bitmap bitmap = IconUtil.ToBitmap(splitIcon[1]);

// Get the bit count of an icon.

int bitCount = IconUtil.GetBitCount(splitIcon[2]);

Release Notes

System requirements:

.NET Framework version: 4.0
OS: Windows

New in this version:

Supports .NET 4.0
Project link: https://wincopies.com/

License link: https://github.com/pierresprim/IconExtractor/blob/master/LICENSE.txt

Dependencies

This package has no dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
1.0.2.1-beta 215 10/21/2019
1.0.2 283 10/21/2019
1.0.1 228 5/31/2019