예제 #1
0
 public override void UpdateReferences(BuildingContext context)
 {
     base.UpdateReferences(context);
     foreach (var entry in _dataEntries)
     {
         entry.OffsetToData =
             (uint)_offsetConverter.FileOffsetToRva(_dataTableBuilder.GetDataSegment(entry).StartOffset);
     }
 }
예제 #2
0
 private void AddDirectory(ImageResourceDirectory directory, int level)
 {
     // TODO: add entry names
     _directoryTablesBuilder.AddResourceDirectory(directory, level);
     foreach (var entry in directory.Entries)
     {
         if (entry.HasData)
         {
             _dataDirectoryTableBuilder.AddDataEntry(entry.DataEntry);
             _dataTableBuilder.GetDataSegment(entry.DataEntry);
         }
         else
         {
             AddDirectory(entry.SubDirectory, level + 1);
         }
     }
 }