This is the changes I would suggest:
1. Adding a `is_protocol_banned` function and adding the `file` protocol to the blacklist. 2. Adding a registry key to disable this new behavior (`winecfg` support?)
This is the code to detect if associations are enabled: ```c static BOOL associations_enabled(void) { BOOL ret = TRUE; HKEY hkey; BYTE buf[32]; DWORD len;
if ((hkey = open_associations_reg_key())) { len = sizeof(buf); if (!RegQueryValueExA(hkey, "Enable", NULL, NULL, buf, &len)) ret = IS_OPTION_TRUE(buf[0]); RegCloseKey( hkey ); }
return ret; } ```
Maybe making a copy of it called `protocol_scheme_enabled` and using `ProtocolSheme`/`ProtocolShemeEnabled` as registry key. (Pick your favorite)
Also I saw that all registry keys related to `winemenubuilder` are missing in the official doc: https://wiki.winehq.org/Useful_Registry_Keys