Siegfried Pammer
849161e362
- Replace DecompilerTextView.CleanUpName with direct uses of WholeProjectDecompiler.CleanUpFileName
...
- Add file extension handling to WholeProjectDecompiler.CleanUpName
- Add WholeProjectDecompiler.SanitizeFileName, which respects file extensions
4 years ago
Siegfried Pammer
19d5ea4095
Fix #2505 : Do treat whole resource name as file name without directory at the start of GetFileNameForResource.
4 years ago
Siegfried Pammer
07199e2ecf
Fix #2038 : Add proper support for Long paths on Windows 10 and limit path segments to 255 characters (with long path support) or 30 characters. If a PathTooLongException is thrown display a better error message on project export.
4 years ago
Siegfried Pammer
635013329a
Fix #2358 : use current Path.DirectorySeparatorChar instead of hard-coded backslashes.
4 years ago
Siegfried Pammer
2a9a5237d1
Fix exception when trying to export project for which no target-framework moniker was detected.
4 years ago
Daniel Grunwald
0de6238d65
Support resolving assembly references within a bundle.
5 years ago
文煌
77dc975f9b
fix GetFileNameForResource not in accordance with https://github.com/icsharpcode/ILSpy/pull/2157
5 years ago
文煌
4b27bb5427
copy file overwrite
5 years ago
文煌
908c3081e9
don't write app.manifest if it is default
5 years ago
文煌
65bf8fe92e
do not write app icon and manifest if null
5 years ago
文煌
4a8cca26a1
write app manifest
5 years ago
文煌
1ac59a79cd
copy app.config if exists
5 years ago
文煌
8c54f3caa1
write application icon file
5 years ago
文煌
9742a7cfae
1. Create sub directory when namespace contains dot
...
2. Detect when .NET 3.0/3.5 is required
5 years ago
文煌
a5fdb05c6f
use relative path if reference and target project are in the same root path
5 years ago
dotnet format
0d9f871a4f
#2128 : Reformat the whole code base.
5 years ago
Daniel Grunwald
d02fd09822
Explicitly create partitioners for `Parallel.ForEach` calls.
...
Apparently the default `Parallel.ForEach` logic checks whether the input enumerable is an array or `IList<T>`,
and if it is, creates whole chunks of sequential list/array indices and assigns those to the worker threads.
This is more efficient if the individual items are processed very quickly; but if they take varying amounts of time, a single chunk full of expensive items might keep a single CPU core busy for long after all other CPU cores have gone idle.
5 years ago
dymanoid
bfb57da93b
Implement project writer for SDK style projects
5 years ago
dymanoid
fdef5d11c6
Rearrange project writing logic
...
The WholeProjectDecompiler shall not have too many responsibilities.
5 years ago
dymanoid
b492a20442
Move assembly resolution logic to better place
...
WholeProjectDecompiler shall not care about checking whether an assembly
is in GAC.
5 years ago
dymanoid
a952cda502
Create dedicated namespace for project decompiler
5 years ago
dymanoid
48be6267f3
Replace tuples with value tuples
5 years ago
Siegfried Pammer
60e9c204cc
Fix #1940 : Make sure that we use the correct .NET Core version, when there are multiple frameworks loaded in the current assembly list.
5 years ago
Daniel Grunwald
ff40fbd984
Fix #1958 : Emit ProjectTypeGuids when generating .csproj
...
For portable class libraries, the type GUID is required so that Visual Studio for Mac can open the project.
5 years ago
Daniel Grunwald
fb5ab19bfd
SolutionCreator: Store project type GUID in .sln
5 years ago
Daniel Grunwald
3bf9f7c301
Fix #1943 : "ref readonly" returns from properties/indexers
5 years ago
Siegfried Pammer
70b087bf8d
#1942 : WholeProjectDecompiler: Do not use filenames that collide with names of special devices. Note: this changes the PDB structure from multi-level folders per namespace to "dotted name" folders.
5 years ago
Siegfried Pammer
d051e3aca4
Fix #1923 : Add progress reporting to PowerShell GetDecompiledProjectCmdlet
5 years ago
Siegfried Pammer
be887d0ea6
#1674 : Add DebugInfoProvider to WholeProjectDecompiler API.
6 years ago
Siegfried Pammer
e1bc205d3a
Add support for strong-name keys in WholeProjectDecompiler and RoundtripAssembly tests.
6 years ago
Siegfried Pammer
a63e94e5b4
Refactor Solution decompilation to use Language instead of AssemblyTreeNode.
6 years ago
dymanoid
5e6a261b86
Implement Visual Studio solution generation for icsharpcode#972
6 years ago
Daniel Grunwald
4e173cc885
Improve error message on decompiler crashes
6 years ago
Siegfried Pammer
905081ee37
Fix #1473 : Handle default values for 'Prefer32Bit' correctly.
6 years ago
Siegfried Pammer
c461bb3ccb
WholeProjectDecompiler: store framework version number as padded integer for future use.
6 years ago
Siegfried Pammer
09c6c70879
Ignore empty resources in WholeProjectDecompiler.
6 years ago
Siegfried Pammer
4ccfc39444
Fix #1491 : Exception on empty resource
6 years ago
Siegfried Pammer
6f5284c4ae
WholeProjectDecompiler: Add <Prefer32Bit>True</Prefer32Bit>, if CorFlags.Prefers32Bit is set.
6 years ago
Siegfried Pammer
6c8a55a0af
Fix #1467 : Update WholeProjectDecompiler.GetPlatformName to match Language.GetPlatformDisplayName
6 years ago
Daniel Grunwald
f1d5f9d7ec
Fix #1225 : Increase file name length limit, and opt into Win10 long path support.
7 years ago
Daniel Grunwald
f8efc7cf57
#1225 : Fix inconsistencies in path handling when decompiling resources.
...
Also, move the .resources->.resx conversion into the base class.
Now that we have our own ResXWriter implementation, there's no longer any reason to keep this specific to ILSpy.
7 years ago
Siegfried Pammer
3377e93628
Add LangVersion support to WholeProjectDecompiler and add NonTrailingNamedArguments setting.
7 years ago
Daniel Grunwald
ab157b2fc0
Add TypeSystemOptions.Uncached.
7 years ago
Daniel Grunwald
1f3916d554
Use the resolve methods in MetadataModule, and remove the wrappers in DecompilerTypeSystem.
7 years ago
Siegfried Pammer
41e43920dc
Fix missing AssemblyResolver in ILSpyWholeProjectDecompiler.
7 years ago
Siegfried Pammer
bcfb3742eb
Clean up PEFile, move Pdb related types to DebugInfo namespace
7 years ago
Daniel Grunwald
80a4d951a7
Use .resx file extension when saving resources in XML format.
7 years ago
Daniel Grunwald
c17c3c739f
Fix #1192 : Use custom ResourcesFile implementation
...
This avoids deserializing objects embedded in .resources files within the ILSpy process.
7 years ago
Daniel Grunwald
1c0e61a4c3
Fix #1187 : ArgumentException: Illegal characters in path.
7 years ago
Siegfried Pammer
458f448fae
Avoid unnecessary allocations of MetadataReader and clean up Dom structs a bit.
7 years ago