Fix for beeping on windows (untested)
Moderator: Moderators
-
- Developers
- Posts: 1798
- Joined: 05 Dec 2008, 05:42
- Noob?: Yes
Fix for beeping on windows (untested)
In src/auto/XSTools/win32/utils.cpp, add MB_USEGLYPHCHARS flag to the second argument of WideCharToMultiByte calls.
Re: Fix for beeping on windows (untested)
dwFlagsEternalHarvest wrote:In src/auto/XSTools/win32/utils.cpp, add MB_USEGLYPHCHARS flag to the second argument of WideCharToMultiByte calls.
[in] This specifies whether to translate to precomposed or composite wide characters if a composite form exists, whether to use glyph characters in place of control characters, and how to deal with invalid characters.
You can specify a combination of the flag constants shown in the following table.
MB_PRECOMPOSED -- Always use precomposed characters — that is, characters in which a base character and a nonspacing character have a single character value.
This is the default translation option. Cannot be used with MB_COMPOSITE.
MB_COMPOSITE -- Always use composite characters — that is, characters in which a base character and a nonspacing character have different character values.
Cannot be used with MB_PRECOMPOSED.
MB_ERR_INVALID_CHARS -- If the function encounters an invalid input character, it fails and GetLastError returns ERROR_NO_UNICODE_TRANSLATION.
MB_USEGLYPHCHARS -- Use glyph characters instead of control characters.
A composite character consists of a base character and a nonspacing character, each having different character values.
A precomposed character has a single character value for a base/nonspacing character combination.
In the character è, the e is the base character and the accent grave mark is the nonspacing character.
The function's default behavior is to translate to the precomposed form. If a precomposed form does not exist, the function attempts to translate to a composite form.
The flags MB_PRECOMPOSED and MB_COMPOSITE are mutually exclusive. The MB_USEGLYPHCHARS flag and the MB_ERR_INVALID_CHARS can be set regardless of the state of the other flags.
I suppose. MB_USEGLYPHCHARS should disable the \b and other control characters.
-
- Developers
- Posts: 1798
- Joined: 05 Dec 2008, 05:42
- Noob?: Yes
Re: Fix for beeping on windows (untested)
Maybe somebody with Windows can compile, test, and make new binaries if it works correctly.
Re: Fix for beeping on windows (untested)
I can patch and make new exe (but I donno about tests). But I better upgrade to latest ActivePerl before I do that.EternalHarvest wrote:Maybe somebody with Windows can compile, test, and make new binaries if it works correctly.
And that will happen after 1 Jan 2011
Re: Fix for beeping on windows (untested)
Done.
Exes compiled with Perl 5.12 and uploaded to misc.openkore.com;
Guide Updated to the state, I used to make this Release.
Files updated to match new SCons and Perl 5.12+.
Fixed win32/utils.cpp and win32/wrapper.xs.
Exes compiled with Perl 5.12 and uploaded to misc.openkore.com;
Guide Updated to the state, I used to make this Release.
Files updated to match new SCons and Perl 5.12+.
Fixed win32/utils.cpp and win32/wrapper.xs.
Re: Fix for beeping on windows (untested)
kLab thanks for updating everthing but
when starting the new 2010-01-01 binaries (start or wxstart)
i get a cant find libgcc_s_dw2-1.dll error (you forgot the compile it into the exe?)
after clicking ok i get this
googled a bit and found this:
when starting the new 2010-01-01 binaries (start or wxstart)
i get a cant find libgcc_s_dw2-1.dll error (you forgot the compile it into the exe?)
after clicking ok i get this
Code: Select all
Can't load 'D:/openkore/XSTools.dll' for module XSTools:
load_file:The specified module could not be found at /<D:\openkore\wxstart.exe>DynaLoader.pm line 219.
at openkore.pl line 25
Error: XSTools.dll is not found. Please check your installation.
> Is it possible to build release binaries without this dependancy?
Yes, add -static-libgcc when compiling.
Re: Fix for beeping on windows (untested)
OK. I gonna Recompile.lolzorbot wrote:kLab thanks for updating everthing but
when starting the new 2010-01-01 binaries (start or wxstart)
i get a cant find libgcc_s_dw2-1.dll error (you forgot the compile it into the exe?)
after clicking ok i get thisgoogled a bit and found this:Code: Select all
Can't load 'D:/openkore/XSTools.dll' for module XSTools: load_file:The specified module could not be found at /<D:\openkore\wxstart.exe>DynaLoader.pm line 219. at openkore.pl line 25 Error: XSTools.dll is not found. Please check your installation.
> Is it possible to build release binaries without this dependancy?
Yes, add -static-libgcc when compiling.
As for XSTools.dll, it's not made into EXE files, it go by the second ARC. You better use full.zip to get all the DLLS and EXE's on place.
Stay in Touch, this gonna take a some time.
Re: Fix for beeping on windows (untested)
Tested by macro
but still beeping :S
Code: Select all
macro test {
do c @eval("\a"x2)
}