本文整理汇总了C#中IAssembly.GetManifestResourceNames方法的典型用法代码示例。如果您正苦于以下问题:C# IAssembly.GetManifestResourceNames方法的具体用法?C# IAssembly.GetManifestResourceNames怎么用?C# IAssembly.GetManifestResourceNames使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IAssembly
的用法示例。
在下文中一共展示了IAssembly.GetManifestResourceNames方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: extract_all_resources_to_relative_directory
public static void extract_all_resources_to_relative_directory(IFileSystem fileSystem, IAssembly assembly, string directoryPath, IList<string> relativeDirectories, string resourcesToInclude, bool overwriteExisting = false, bool logOutput = false)
{
var resourceString = new StringBuilder();
foreach (var resourceName in assembly.GetManifestResourceNames())
{
if (!resourceName.StartsWith(resourcesToInclude))
{
continue;
}
resourceString.Clear();
resourceString.Append(resourceName);
//var fileExtensionLocation = resourceName.LastIndexOf('.');
//resourceString.Remove(fileExtensionLocation, resourceString.Length - fileExtensionLocation);
resourceString.Replace(resourcesToInclude + ".", "");
foreach (var directory in relativeDirectories)
{
resourceString.Replace("{0}".format_with(directory), "{0}{1}".format_with(directory, fileSystem.get_path_directory_separator_char()));
}
// replacing \. with \
resourceString.Replace("{0}.".format_with(fileSystem.get_path_directory_separator_char()), "{0}".format_with(fileSystem.get_path_directory_separator_char()));
var fileLocation = resourceString.ToString();
//var fileLocation = fileSystem.combine_paths("", resourceString.ToString().Split('.')) + resourceName.Substring(fileExtensionLocation);
var filePath = fileSystem.combine_paths(directoryPath, fileLocation);
if (logOutput) "chocolatey".Log().Debug("Unpacking {0} to '{1}'".format_with(fileLocation,filePath));
extract_binary_file_from_assembly(fileSystem, assembly, resourceName, filePath, overwriteExisting);
}
}