ds5678
fb180b0010
Add tests
1 month ago
ds5678
db45fc70a2
Fix regression: UseNestedDirectoriesForNamespaces
1 month ago
Siegfried Pammer
356d7a1b43
Fix #3408 : Wrong exported assembly type
2 months ago
Siegfried Pammer
53522c45f8
#3401 : fix missing file extension if name contains ':'
3 months ago
Siegfried Pammer
31bbcf41bc
Fix handling of file extensions in project export.
3 months ago
Siegfried Pammer
292c21d68e
#3401 : Treat class name as single name and not as path.
3 months ago
Siegfried Pammer
0096994679
Fix #3401 : normalize directory separators to use the current platform separator
3 months ago
Siegfried Pammer
e8a9227483
Fix #3264 : Do not allow zero-length segments in CleanUpName: Escape path separator characters at the start of a segment.
9 months ago
Siegfried Pammer
1fca3da27b
Fix #3072 : Ignore resources have the same name as a namespace.
1 year ago
Siegfried Pammer
963ff7cb3d
Fix #3151 : Make IProjectFileWriter API public
1 year ago
Siegfried Pammer
2d90c457c8
Lift some artificial restrictions to PEFile in WholeProjectDecompiler and ReflectionDisassembler.
1 year ago
Siegfried Pammer
ca78d4a14d
Use MetadataFile instead of PEFile in TypeSystem.
1 year ago
Siegfried Pammer
7cb8e6534d
Fix #2850 : Make sure that type names longer than 255 characters are handled correctly by WholeProjectDecompiler.GetFileNameForHandle
2 years ago
Siegfried Pammer
cedad6d5e8
#2850 : swap try-catch and using statement so that exception handling shows the file being decompiled causing the IOException.
2 years ago
Siegfried Pammer
ff0e929866
- Introduce ProjectItemInfo instead of tuples in WholeProjectDecompiler project item generation.
...
- Set 'LogicalName' attribute for all decompiled resources. This makes it possible to correctly recompile projects with resource names that are not valid filenames.
- Set Generator and SubType properties for XAML files.
2 years ago
Siegfried Pammer
4eea4bf353
Fix #2830 : Can't decompile project with / in resource name on Windows
2 years ago
Siegfried Pammer
c3d0e5ecc2
Fix #1784 : Move RemoveEmbeddedAttributes transform to ICSharpCode.Decompiler and do no longer decompile embedded attributes in WholeProjectDecompiler and PortablePdbWriter.
3 years ago
Siegfried Pammer
71e4d51786
Fix #2807 : Detect when a compiler-generated/hidden type needs to be decompiled in WholeProjectDecompiler.
3 years ago
Siegfried Pammer
343694c549
Generalize progress reporting for decompilation and PDB generation.
3 years ago
Siegfried Pammer
5046e4cf60
Fix #2718 , Fix #2719 , Fix #2725 : Remove WPF compiler-generated code.
3 years ago
Siegfried Pammer
8dd721aee3
Fix #2706 : Filenames and directories truncated to 30 characters.
...
With the built-in support for long paths in .NET 6.0, we no longer need to check for the registry key. The only limitation that remains is maxSegmentLength, which seems to be 255 on all commonly used file systems/all platforms. Also there is no need to differentiate between Windows and other platforms.
- Windows Explorer in Windows 10 seems to be fine with files generated by ILSpy that have names longer than 260 characters.
- Notepad++ and other applications seem to use 8.3 path syntax to access the file.
- Visual Studio 2022 does not like the long path names, affected users should raise an issue with MS. ILSpy generates proper paths.
3 years ago
Andrii Kurdiumov
a2e9a2f5d8
Allow decompile C++/CLI assemblies
...
When C++/CLI project produce assembly it generates target attribute like this
```
[assembly: TargetFramework(".NETCoreApp,Version=7.0", FrameworkDisplayName = "")]
```
when C# generates `TargetFrameworkAttribute` it produce slightly different format
```
[assembly: TargetFramework(".NETCoreApp,Version=v7.0", FrameworkDisplayName = "")]
```
3 years ago
Siegfried Pammer
2646265069
#2565 : Improve GetFileNameForResource: Assume that input is already a filename.
3 years ago
Siegfried Pammer
37456672d7
WholeProjectDecompiler: set segment length for Unix to 255.
3 years ago
Siegfried Pammer
a48f0d311c
Fix #2330 : Add conditional sub directory support
3 years ago
Siegfried Pammer
bf336d85cf
Fix second issue mentioned in #2565 : resource names such as path/to/file.ext are now properly handled as relative paths.
4 years ago
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
Daniel Grunwald
bd9aabeae2
Update to dotnet-format 5.1.225507.
...
This makes the formatting expected by our CI consistent with that generated by VS2019.9.
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
Siegfried Pammer
2ed52b9634
#2362 : Provide more information on assembly resolve errors
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
文煌
c2c1bcc570
write empty RootNamespace if need
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
文煌
d612008c9f
write OutputType for asp.net library
5 years ago
文煌
bc888117e9
write EmbeddedResource for non .resx 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
文煌
5d80c56189
don't write Reference for .NET Core shared assembly
5 years ago
文煌
e8e0f89f6d
don't write HintPath for .NET Core shared assembly
5 years ago
文煌
a5fdb05c6f
use relative path if reference and target project are in the same root path
5 years ago
文煌
8152e40d5c
don't write HintPath for GAC assembly
5 years ago
dotnet format
0d9f871a4f
#2128 : Reformat the whole code base.
5 years ago