yyc12345
db69452213
doc: add docstring for highlevel functions
2026-06-26 14:40:20 +08:00
yyc12345
a350a591ad
doc: add docstring for lowlevel
2026-06-26 13:44:56 +08:00
yyc12345
6a354bd7a7
doc: add some note for win32 module test
2026-06-25 21:51:21 +08:00
yyc12345
23d7045ec1
doc: add docstrings for win32 module
2026-06-25 21:47:38 +08:00
yyc12345
3492f93c83
fix: fix the reference to unlink from link
2026-06-25 15:38:36 +08:00
yyc12345
d1de56a21d
feat: modify ppic example for the latest ppic
2026-06-25 15:27:41 +08:00
yyc12345
880f90211b
feat: update error notes for wfassoc
2026-06-25 13:42:23 +08:00
yyc12345
1a44240f88
feat: update qwfassoc
2026-06-23 21:38:54 +08:00
yyc12345
071347f4d4
feat: include ai first step works
2026-06-23 20:46:56 +08:00
yyc12345
821b865f2d
refactor: add WF prefix for c/c++ binding members
2026-06-17 21:40:19 +08:00
yyc12345
50f01429b0
doc: update readme
2026-06-17 21:23:27 +08:00
yyc12345
930a84a0f6
doc: add doc for test instruction
2026-06-01 22:08:25 +08:00
yyc12345
447d94fdd6
fix: add arbitrarily_delete_value and fix various bugs for lowlevel and highlevel
2026-05-29 09:46:59 +08:00
yyc12345
f0bd2c0b73
feat: add arbitrarily_delete_subkey_all for regext
2026-05-29 08:58:15 +08:00
yyc12345
119a4d0341
feat: add highlevel test
2026-05-28 21:34:42 +08:00
yyc12345
53b40a4d2f
feat: add test for lowlevel
2026-05-28 21:03:50 +08:00
yyc12345
0533cdab23
test: add test for default icon resource
2026-05-27 19:12:52 +08:00
yyc12345
8c61aa1e1d
feat: remove some optional in rust and cbindgen
2026-05-27 13:16:51 +08:00
yyc12345
77924b5937
feat: update cbindgen
2026-05-27 12:30:03 +08:00
yyc12345
2c811503a2
feat: update program and cdylib exposed interface
2026-05-27 10:38:45 +08:00
yyc12345
18a55272a3
ai: update tasks
2026-05-25 23:26:11 +08:00
yyc12345
1658127bdd
doc: add some prompt for qwfassoc
2026-05-25 16:34:35 +08:00
yyc12345
72a8c13c1f
feat: add c++ wfassoc wrapper
2026-05-19 20:34:12 +08:00
yyc12345
aececd8e5d
feat: entirely remove old pure C project
2026-05-19 14:22:45 +08:00
yyc12345
883cba901c
feat: updte wfassoc C header
2026-05-19 14:21:01 +08:00
yyc12345
a1874f3682
feat: update wfassoc C header
2026-05-19 12:54:59 +08:00
yyc12345
3c429b6c51
feat: remove all old useless code
2026-05-19 11:04:25 +08:00
yyc12345
a4d2f7bc26
feat: finish all highlevel function and expose them to cdylib
2026-05-19 10:59:57 +08:00
yyc12345
658806e9ff
refactor: seperate highlevel into 2 individual files
2026-05-19 10:26:17 +08:00
yyc12345
f8db414da3
fix: fix the behavior of highlevel fetching string and icon
2026-05-18 21:26:02 +08:00
yyc12345
bc419f8d5e
fix: fix refstr concept issue
2026-05-18 21:14:26 +08:00
yyc12345
3b0080849d
fix: fix expand string error
2026-05-18 20:46:31 +08:00
yyc12345
53cc8edcfd
fix: update blank guard usage and fix issue
2026-05-18 17:04:11 +08:00
yyc12345
1086039dcb
feat: finish all lowlevel function
2026-05-18 16:40:06 +08:00
yyc12345
ae0231fe69
refactor: seperate lowlevel into 4 individual submodules
2026-05-18 16:27:39 +08:00
yyc12345
4205ef18d3
feat: write some content for lowlevel
2026-05-18 16:00:29 +08:00
yyc12345
bbcea1f4d2
feat: add more guard and const in lowlevel
2026-05-18 15:43:16 +08:00
yyc12345
91c7fdda70
feat: finish cdylib ffi and improve ffi C header
2026-05-18 13:33:57 +08:00
yyc12345
f1a7cb89e5
feat: add ext status for cdylib
2026-05-17 16:02:39 +08:00
yyc12345
fe9f839091
feat: finish default icon and friendly app name for application subkey
2026-05-17 15:34:18 +08:00
yyc12345
9d3467ea26
feat: add application subkey shell verb function
2026-05-17 14:28:29 +08:00
yyc12345
9d02a2187f
feat: add some boring function in lowlevel
2026-05-17 12:37:14 +08:00
yyc12345
c164bb73bc
feat: add two registry utility functions
2026-05-16 22:35:36 +08:00
yyc12345
92ec83b8d7
feat: remove cbindgen. use manual writing instead (actually AI writing)
2026-05-16 13:58:12 +08:00
yyc12345
8d7f96d499
feat: add cbindgen support
2026-05-15 17:02:29 +08:00
yyc12345
684a24fcf8
feat: update cdylib
2026-05-15 16:00:54 +08:00
yyc12345
5c182bb4d3
feat: add all schema functions in cdylib project
2026-05-11 14:24:28 +08:00
yyc12345
9e9aa282b1
feat: use macro to simplify cdylib decl
2026-05-11 13:54:47 +08:00
yyc12345
76ddddb6cd
feat: fix LazyLock issue and add something in cdylib
2026-05-11 13:33:01 +08:00
yyc12345
f0e610f8c8
feat: add example for cdylib
2026-05-10 23:16:56 +08:00
yyc12345
7d92f9a4a0
feat: fix cstr ffi again
2026-05-10 16:55:09 +08:00
yyc12345
1a45b309e7
feat: update cdylib cstr ffi module
2026-05-10 16:43:25 +08:00
yyc12345
7f36375a73
refactor: remove old exec file
2026-05-09 20:10:15 +08:00
yyc12345
a6322bff51
feat: finish exec runner
2026-05-09 20:07:08 +08:00
yyc12345
6804b96078
feat: add object pool for cdylib
2026-05-09 16:27:04 +08:00
yyc12345
d4b52efee0
feat: fix exec runner issue
2026-05-08 14:14:55 +08:00
yyc12345
ec5c78e8ce
feat: finish highlevel
2026-05-08 14:08:51 +08:00
yyc12345
e325ba08f1
feat: finish highlevel register
2026-05-08 10:56:47 +08:00
yyc12345
03d17fad6e
feat: finish highlevel unregister
2026-05-08 10:45:43 +08:00
yyc12345
8f762928db
feat: finish highlevel register function
2026-05-08 10:41:33 +08:00
yyc12345
94f868ebda
doc: add some doc in highlevel
2026-05-07 21:09:08 +08:00
yyc12345
2da84f8797
feat: finish highlevel convertion
2026-05-07 20:56:23 +08:00
yyc12345
fe81541eeb
feat: update highlevel parse
2026-05-07 13:21:35 +08:00
yyc12345
3edb08efc7
feat: add func in lowlevel
2026-05-06 21:44:40 +08:00
yyc12345
edb9d0a14d
feat: add some lowlevel functions
2026-05-06 21:39:13 +08:00
yyc12345
c6fa89f15f
doc: add preface about goal of this lib
2026-04-30 21:56:02 +08:00
yyc12345
01302214c2
feat: rename some func name in lowlevel
2026-04-30 13:12:58 +08:00
yyc12345
e6ac59d85c
feat: add shell verb struct
2026-04-30 13:09:59 +08:00
yyc12345
1df7191a36
fix: rename losse icon and string res into variant
2026-04-30 13:04:59 +08:00
yyc12345
66dc8c2630
fix: resotre highlevel program internal struct
2026-04-30 13:02:49 +08:00
yyc12345
6096265017
feat: add placeholder cmdline concept
2026-04-30 12:59:37 +08:00
yyc12345
5f9c893d95
feat: finish lowlevel application key decl
2026-04-30 10:16:52 +08:00
yyc12345
2fff56b74d
feat: add losse StrRefStr and IconRefStr
2026-04-30 10:01:22 +08:00
yyc12345
94db3fdfd4
feat: introduce territory in lowlevel
2026-04-29 20:37:19 +08:00
yyc12345
10b27c0fc2
feat: add verb concept
2026-04-29 18:58:51 +08:00
yyc12345
e8ff9a3e4f
feat: write some lowlevel code
2026-04-29 13:11:12 +08:00
yyc12345
6ff42928f1
feat: write some highlevel code
2026-04-23 13:17:25 +08:00
yyc12345
fed02ad9bc
feat: update highlevel
2026-04-22 14:53:22 +08:00
yyc12345
fc2097560c
feat: improve wfassoc-exec
2026-04-21 16:30:25 +08:00
yyc12345
3e588f0ac9
doc: update some doc
2026-04-19 16:10:04 +08:00
yyc12345
c650290df6
feat: finish manifest convertion
2026-04-17 15:43:39 +08:00
yyc12345
a7a9a71e80
feat: update wfassoc-exec
2026-04-17 15:24:22 +08:00
yyc12345
e9ca5dd5ec
feat: make a clear boundary for lowlevel and highlevel API
2026-04-17 15:01:28 +08:00
yyc12345
d2bd4425df
refactor: rename project name from underline to dash
2026-04-17 14:52:13 +08:00
yyc12345
1509723ada
refactor: move something and implement FileName
2026-04-15 15:13:24 +08:00
yyc12345
69c7592f41
feat: remove useless win32 concept for clear code
2026-04-12 16:39:15 +08:00
yyc12345
6b7019e640
revoke: revoke the rename of ppic
2026-04-12 14:54:43 +08:00
yyc12345
d7359d41d4
feat: update manifest file
2026-04-03 16:11:51 +08:00
yyc12345
7d8757c0ec
refactor: commit code which idk when i write them
2026-04-03 15:02:16 +08:00
yyc12345
796b2efb1c
feat: write some cdylib code
2026-01-04 14:05:34 +08:00
yyc12345
27ab6721de
feat: upgrade wfassoc_exec
2025-12-30 23:21:01 +08:00
yyc12345
7a03d38f68
feat: finish ppic.toml as the example
2025-12-25 20:13:12 +08:00
yyc12345
0b98610e1f
doc: write some README but not finish
2025-12-17 22:34:49 +08:00
yyc12345
11c48b4aaf
feat: update wfassoc dylib design
2025-11-26 22:40:17 +08:00
yyc12345
2741969164
refactor(assoc): improve error handling and type safety
...
- Remove unused `Infallible` import
- Add `ParseProgIdKindError` for better ProgId parsing error handling
- Implement `BlankProgId` variant for empty ProgId strings
- Add `ExtKey::new` and `ProgIdKey::new` constructors
- Add `as_inner` methods to `ExtKey` and `ProgIdKey`
- Replace `to_string()` calls with `as_inner().to_string()`
- Update error type from `BlankStringError` to `BlankPathError`
- Rename `BlankStringError` to `BlankPathError` with updated message
- Update `blank_path_guard` return type and error handling
- Remove `Display` and `FromStr` implementations from `ExtKey` and `ProgIdKey`
2025-11-01 16:11:22 +08:00
yyc12345
3694a6a82a
feat(windows): add blank path guard for registry operations
...
- Add BlankStringError to handle empty registry paths
- Implement blank_path_guard function to prevent dangerous registry operations
- Apply blank path guard to extension and ProgId key operations
- Update error handling to include BlankPath error variant
2025-10-29 10:53:29 +08:00
yyc12345
a3456e9fdd
feat(windows): implement registry manipulation for file associations
...
- Add comprehensive error types for registry operations
- Implement ProgIdKind enum with Display and FromStr traits
- Create ApplicationVisitor and ClassesVisitor structs
- Add ExtKey methods for linking, unlinking and querying ProgId
- Implement ProgIdKey creation and deletion in registry
- Add safe delete function to prevent accidental registry cleanup
- Introduce Display and FromStr implementations for ExtKey and ProgIdKey
- Organize registry access through scoped and viewed key opening
- Enable setting default "Open With" verbs for file extensions
- Support both user and system level registry modifications
2025-10-29 10:31:00 +08:00
yyc12345
3f1a070b65
refactor(wfassoc): restructure association module for registry operations
...
- Removed unused regex and uuid dependencies
- Replaced custom Ext and ProgId implementations with windows-specific types
- Added Scope and View enums for registry access control
- Introduced ExtKey and ProgIdKey structs for registry key handling
- Added error types for better error handling
- Implemented stub methods for registry operations
- Restructured module organization for better clarity
- Added utility functions for privilege checking
2025-10-28 14:10:28 +08:00
yyc12345
4d679588f8
feat(wfassoc): enhance CLSID handling and parsing
...
- Add `getrandom` dependency for UUID v4 feature
- Enable UUID v4 feature in `Cargo.toml`
- Implement `Clsid::with_random()` for generating random CLSIDs
- Improve `Clsid::new()` to accept `&Uuid` directly
- Update `Clsid::from_str()` to use `uuid::fmt::Braced` for stricter parsing
- Add comprehensive tests for valid and invalid CLSID strings
- Fix minor typo in test assertion code
- Enhance documentation comments for CLSID struct and error type
2025-10-28 12:50:15 +08:00
yyc12345
1342799303
feat(windows): implement file extension and ProgId parsing structs
...
- Add Ext struct for handling file extensions with validation
- Implement ProgId struct following Microsoft's suggested format
- Create Clsid struct for handling CLSID with UUID parsing
- Add ExpandString struct for environment variable expansion
- Include comprehensive tests for new structs and parsing logic
- Remove duplicate ExpandString implementation from windows.rs
- Organize code regions for better readability and maintenance
2025-10-28 11:12:13 +08:00