This is a set of .NET libraries for advanced use.
No contributor is responsible or liable for illegal use of this library.
Library | Documentation |
---|---|
HarkLib.Parsers.Generic.dll | Delimiter Regular Expression (drex) |
HarkLib.Parsers.dll | Document |
HTML | |
XML | |
HarkLib.Security.dll | AES |
RSA | |
SecureConsole | |
SecurePassword | |
HarkLib.Core.dll | FileCache |
FileSettings | |
UIDManager | |
Exceptions | |
Extensions | |
HarkLib.Net.dll | Resolver |
GhostMail | |
WebResource |
HarkLib
|:: .make - Solution builder folder
|:: config.ini - Configuration file for compilation
|:: .vscode - Visual Studio Code folder (optional)
|:: out - Output folder
|:: src - Source code
|:: Core - C#
|:: Exceptions
|:: Extensions
|:: Net - C#
|:: Exceptions
|:: WebResource
|:: Parsers - F#
|:: Parsers.Generic - C#
|:: Exceptions
|:: Security - C#
|:: Extensions
|:: UnitTesting - C# for some unit tests
|:: Net
|:: Parsers
|:: Sequencers
|:: Security
Because the C# language and the F# have their own strengths and weaknesses, I made the choice to combine both where I feel their are the better.
You need to have installed csc.exe (C# compiler) and fsc.exe (F# compiler). You need to have both compilers accessible in you PATH environment variable.
If you are using Visual Studio Code, you just have to press Ctrl+Shift+B. It will run the command 'make'.
If you are not using Visual Studio Code, open a terminal on
the root folder (where there is the file makefile) and run
the following command : make
or with full specification :
make build
.
If you want to clean the project, you can run make clean
.
If you want to clean the project and compile just after, please
run make clean build
.
The .make folder contains the source code (C#) of the solution compiler. If needed, you can recompile it.
The compilation uses cache system which allows faster compilations. Indeed, if you edit a project, it will recompile only this one. This may result in some errors if you recompile a library while removing a method/class. The other programs will try to find this class or this method at JIT compilation time, producing a runtime error. To solve this kind of problem, just clean and rebuild the whole project.
In the file .make/config.ini, you can find the configuration of the compilation. This way, no need to recompile the compiler to change the references added in each sub project, the output file names, etc...
If you are using a compiler, you can load one or many of the libraries provided by this project by adding a reference while compiling.
If you use the command line, you can compile a C# program with :
csc ... /reference:HarkLib.Core.dll /reference:HarkLib.Net ...
For a F# program :
fsc ... --reference:HarkLib.Core.dll --reference:HarkLib.Net ...
For a C++/CLI program :
link ... HarkLib.Code.dll ...
If you are using Visual Studio, you can add it as a reference in you project. If you don't know how, you can follow this "tutorial".
If you want to use a library without referencing it, you can use the following way (here in C#) :
Assembly assembly = Assembly.Load(AssemblyName.GetAssemblyName("HarkLib.Security.dll"));
foreach(Type t in assembly.GetTypes())
Console.WriteLine(t.Name);
- Core
- Add doc comments
- Parsers
- Add XML permissive parsing
- Add doc comments
- Add XPath parsing
- Add XPath parsing doc comments
- Parsers.Generic
- ByteSequencer : Create a better result parsing for
or
({...|...}
) - ByteSequencer : Add exclude pattern
- Clean the files
- Test in real situations
- Add doc comments
- ByteSequencer : Create a better result parsing for
- Security
- Add RSA
- Add "anti-forcing system" (slow generation)
- Add doc comments
- Net
- Add web client
- Add web server
- Add doc comments
- Add webdav server
- Add ghost mail system
- Add web directory browser
- Add light web server for software interface
- Add light webdav server for software interface
- AI
- Finish HTM CLA
- Make a unit test for HTM CLA