diff --git a/README.md b/README.md index 148e5d5..73264b0 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# wfassoc +# Wfassoc **W**indows **F**ile **Assoc**iation Library @@ -10,19 +10,21 @@ * `wfassoc_dylib`: A dynamic library exposed for C/C++ and other languages users. * `wfassoc_exec`: A executable configuring file assocation according to user given profile and request. -If you are a programmer who just want to silently set your file association for user, +If you are a programmer who just want to silently set your file associations for user, `wfassoc_exec` would be your best choice. -The only things you need to do is that write a TOML description file, +The only thing you need to do is that write a manifest TOML file, and provide it and `wfassoc_exec` with your executable. By executing `wfassoc_exec` with this TOML file in your executable, -you can simply achieve this goal and analyze its return value to check whether it success. +you can simply achieve this goal, by analyse its return value to check whether it success. However, if you are prefering that let user decide which file associations should be created, -even have an UI displaying all current file association related with this program (like 7-Zip File Manager does), -you can choose `wfassoc_dylib` for your solution. -`wfassoc_dylib` expose all essential functions for this task. +even have an UI displaying all current file associations related with this program (like 7-Zip File Manager does), +you can choose `wfassoc_dylib` as your solution. +`wfassoc_dylib` exposes all essential functions for this task. And you can build it with your own program. At last, if all scenarios above can not cover your requirements, you can utilize `wfassoc` directly in Rust, change all essential code in your favor, -and finally produce the application which onlt suit for yourself. +and finally produce the artifact which only works for your requirements. + +For the usage of these projects, please browse their README respectively. diff --git a/wfassoc/README.md b/wfassoc/README.md new file mode 100644 index 0000000..373a503 --- /dev/null +++ b/wfassoc/README.md @@ -0,0 +1,3 @@ +# Wfassoc Core + +Most Windows related struct are located in `assoc` module. The top module only contain structs exposed for convenient use of end user. diff --git a/wfassoc_dylib/README.md b/wfassoc_dylib/README.md new file mode 100644 index 0000000..b8147fe --- /dev/null +++ b/wfassoc_dylib/README.md @@ -0,0 +1,5 @@ +# Wfassoc C/C++ Library + +For how to utilize this library, please see our example located in `example/ppic`. It is a Qt project built with CMake and demonstrate basically all usage of exposed functions in this dynamic library. + +All crucial spots are written in this example as the code comment so I don't write them in there again. diff --git a/wfassoc_exec/README.md b/wfassoc_exec/README.md new file mode 100644 index 0000000..1e6f5eb --- /dev/null +++ b/wfassoc_exec/README.md @@ -0,0 +1,7 @@ +# Wfassoc Executable + +For the syntax of this executable's parameters, execute it with `--help` for more. + +For how to write manifest TOML file passed to `config` parameter, please see our example located in `example/ppic.toml`. + +Please note that the value passed to `for` parameter should be consistent when calling `query`, `register` and `unregister`. For example you should not call `register` with `--for user`, and call `unregister` with `--for system` later.