Skip to content

Commit f864d3b

Browse files
committed
Updating assembly to v1.5
1 parent 25ceb93 commit f864d3b

File tree

4 files changed

+75
-58
lines changed

4 files changed

+75
-58
lines changed
+55-55
Original file line numberDiff line numberDiff line change
@@ -1,55 +1,55 @@
1-
using System.Reflection;
2-
using System.Resources;
3-
using System.Runtime.CompilerServices;
4-
using System.Runtime.InteropServices;
5-
using System.Windows;
6-
7-
// Les informations générales relatives à un assembly dépendent de
8-
// l'ensemble d'attributs suivant. Changez les valeurs de ces attributs pour modifier les informations
9-
// associées à un assembly.
10-
[assembly: AssemblyTitle("Dependencies")]
11-
[assembly: AssemblyDescription("")]
12-
[assembly: AssemblyConfiguration("")]
13-
[assembly: AssemblyCompany("")]
14-
[assembly: AssemblyProduct("Dependencies")]
15-
[assembly: AssemblyCopyright("Copyright © 2017")]
16-
[assembly: AssemblyTrademark("")]
17-
[assembly: AssemblyCulture("")]
18-
19-
// L'affectation de la valeur false à ComVisible rend les types invisibles dans cet assembly
20-
// aux composants COM. Si vous devez accéder à un type dans cet assembly à partir de
21-
// COM, affectez la valeur true à l'attribut ComVisible sur ce type.
22-
[assembly: ComVisible(false)]
23-
24-
//Pour commencer à générer des applications localisables, définissez
25-
//<UICulture>CultureUtiliséePourCoder</UICulture> dans votre fichier .csproj
26-
//dans <PropertyGroup>. Par exemple, si vous utilisez le français
27-
//dans vos fichiers sources, définissez <UICulture> à fr-FR. Puis, supprimez les marques de commentaire de
28-
//l'attribut NeutralResourceLanguage ci-dessous. Mettez à jour "fr-FR" dans
29-
//la ligne ci-après pour qu'elle corresponde au paramètre UICulture du fichier projet.
30-
31-
//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
32-
33-
34-
[assembly: ThemeInfo(
35-
ResourceDictionaryLocation.None, //où se trouvent les dictionnaires de ressources spécifiques à un thème
36-
//(utilisé si une ressource est introuvable dans la page,
37-
// ou dictionnaires de ressources de l'application)
38-
ResourceDictionaryLocation.SourceAssembly //où se trouve le dictionnaire de ressources générique
39-
//(utilisé si une ressource est introuvable dans la page,
40-
// dans l'application ou dans l'un des dictionnaires de ressources spécifiques à un thème)
41-
)]
42-
43-
44-
// Les informations de version pour un assembly se composent des quatre valeurs suivantes :
45-
//
46-
// Version principale
47-
// Version secondaire
48-
// Numéro de build
49-
// Révision
50-
//
51-
// Vous pouvez spécifier toutes les valeurs ou indiquer les numéros de build et de révision par défaut
52-
// en utilisant '*', comme indiqué ci-dessous :
53-
// [assembly: AssemblyVersion("1.0.*")]
54-
[assembly: AssemblyVersion("1.0.0.0")]
55-
[assembly: AssemblyFileVersion("1.0.0.0")]
1+
using System.Reflection;
2+
using System.Resources;
3+
using System.Runtime.CompilerServices;
4+
using System.Runtime.InteropServices;
5+
using System.Windows;
6+
7+
// Les informations générales relatives à un assembly dépendent de
8+
// l'ensemble d'attributs suivant. Changez les valeurs de ces attributs pour modifier les informations
9+
// associées à un assembly.
10+
[assembly: AssemblyTitle("Dependencies")]
11+
[assembly: AssemblyDescription("Modern rewrite of the depends.exe tool.")]
12+
[assembly: AssemblyConfiguration("")]
13+
[assembly: AssemblyCompany("")]
14+
[assembly: AssemblyProduct("Dependencies")]
15+
[assembly: AssemblyCopyright("Copyright © 2017")]
16+
[assembly: AssemblyTrademark("")]
17+
[assembly: AssemblyCulture("")]
18+
19+
// L'affectation de la valeur false à ComVisible rend les types invisibles dans cet assembly
20+
// aux composants COM. Si vous devez accéder à un type dans cet assembly à partir de
21+
// COM, affectez la valeur true à l'attribut ComVisible sur ce type.
22+
[assembly: ComVisible(false)]
23+
24+
//Pour commencer à générer des applications localisables, définissez
25+
//<UICulture>CultureUtiliséePourCoder</UICulture> dans votre fichier .csproj
26+
//dans <PropertyGroup>. Par exemple, si vous utilisez le français
27+
//dans vos fichiers sources, définissez <UICulture> à fr-FR. Puis, supprimez les marques de commentaire de
28+
//l'attribut NeutralResourceLanguage ci-dessous. Mettez à jour "fr-FR" dans
29+
//la ligne ci-après pour qu'elle corresponde au paramètre UICulture du fichier projet.
30+
31+
//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
32+
33+
34+
[assembly: ThemeInfo(
35+
ResourceDictionaryLocation.None, //où se trouvent les dictionnaires de ressources spécifiques à un thème
36+
//(utilisé si une ressource est introuvable dans la page,
37+
// ou dictionnaires de ressources de l'application)
38+
ResourceDictionaryLocation.SourceAssembly //où se trouve le dictionnaire de ressources générique
39+
//(utilisé si une ressource est introuvable dans la page,
40+
// dans l'application ou dans l'un des dictionnaires de ressources spécifiques à un thème)
41+
)]
42+
43+
44+
// Les informations de version pour un assembly se composent des quatre valeurs suivantes :
45+
//
46+
// Version principale
47+
// Version secondaire
48+
// Numéro de build
49+
// Révision
50+
//
51+
// Vous pouvez spécifier toutes les valeurs ou indiquer les numéros de build et de révision par défaut
52+
// en utilisant '*', comme indiqué ci-dessous :
53+
// [assembly: AssemblyVersion("1.0.*")]
54+
[assembly: AssemblyVersion("1.5.0.0")]
55+
[assembly: AssemblyFileVersion("1.5.0.0")]

README.md

+20-3
Original file line numberDiff line numberDiff line change
@@ -11,19 +11,36 @@
1111

1212
## Releases
1313

14-
* v1.0 -- Initial release
14+
* [v1.5](https://github.com/lucasg/Dependencies/releases/download/v1.5/Dependencies.zip) :
15+
* Support of Sxs parsing
16+
* Support of api set schema parsing
17+
* API and Modules list can be filtered
18+
* [v1.0](https://github.com/lucasg/Dependencies/releases/download/v1.0/Dependencies.zip) -- Initial release
1519

1620
## Installation and Usage
1721

1822
`Dependencies` is currently shipped as a binary (no installer present). Just uncompress the archive and click on it.
19-
Since the binary is not signed, `SmartScreen` might scream at runtime.
23+
Since the binary is not signed, `SmartScreen` might scream at runtime. `Dependencies` also bundle `ClrPhTester.exe`, a dumpbin-like executable used to test for non-regressions.
24+
25+
`Dependencies` currently does not recursively resolve child imports when parsing a new PE since it can be really memory-hungry to do so ( it can over a GB even for "simple" PEs ). This behaviour can be overriden (app-wide) via a property located in "Options->Properties->Tree build behaviour".
26+
27+
<p align="center">
28+
<img alt="User options" src="screenshots/UserOptions.PNG"/>
29+
</p>
30+
31+
Tree build behaviours available :
32+
33+
* `ChildOnly` (default) : only process PE child imports and nothing beyond.
34+
* `RecursiveOnlyOnDirectImports` : do not process delayload dlls.
35+
* `Recursive` : Full recursive analysis. You better have time and RAM on your hands if you activate this setting.
36+
2037

2138
## Limitations
2239

2340
At the moment, `Dependencies` recreates features and "features" of `depends.exe`, which means :
2441

2542
* Only direct, forwarded and delay load dependencies are supported. Dynamic loading via `LoadLibrary` are not supported (and probably won't ever be).
26-
* `Min-win` dlls are not propertly supported. (UPDATED : minimal support of api set schema redirection)
43+
* `Min-win` dlls are not propertly supported. (UPDATED : support of api set schema redirection in 1.5)
2744
* There are no checks between Api Imports and Exports for the moment, only dll presence is supported.
2845
* No support of esoteric dll load paths (via `AppPaths` or `SxS` manifests entries). (UPDATED : minimal support of sxs private manifests search).
2946

screenshots/UsageExemple.gif

-2.17 MB
Loading

screenshots/UserOptions.png

7.08 KB
Loading

0 commit comments

Comments
 (0)