-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Why not directly compile rust code into a dll file #15
Comments
Not sure what you want by that title. Even if there's a Rust dll file, that should still be loaded by the C++ part as it's not ported completely. |
The input method is essentially a dll file which exports four interfaces
DllRegisterServer and DllUnregisterServer are registered (installation and uninstallation), that is, functions triggered when calling regsvr32.exe to register. for example |
Ah sure, it's the purpose of this repository. It's just not done yet. |
But I think that will be the last thing I'll do here, since for now the port is happening only in a way to call Rust things from C++ but not vise versa. Implementing the DLL interfaces right now will require calling C++ things from Rust which I'd rather not do. I'll only do it when I finish porting everything. |
It is a good idea!
only migrate core Text Services Framework to rust first, input method engine can leverage existing open source projects, like RIME , librime-rs |
This is a way to generate a similar DLL that can expose IME interface and make it available to windows. |
I see no value to generate DLL when the logic is still using C++. I'm not deferring it just because I can't, as I already have done that in some other project. I just don't want to complicate things here as I described above. BTW, the "core" logic is already ported, what's not ported is GUI part etc. |
I found an IME GUI developed using rust |
I expect vcxproj and prebuild.ps1 to be modified in that case.
Originally posted by @saschanaz in #14 (comment)
The text was updated successfully, but these errors were encountered: