Hi Richard MacCutchan!
Follow me, the above code can be edited without using RunWorkerCompleted, the program still returns the same result because the PlaySync() method is a sequential command, simple the code will be easier to understand, you see the code below. RunWorkerCompleted event in other cases eg Play() instead PlaySync() method to catch "PLAY/STOP" status for example, do you think ? that is my opinion.
because the PlaySync() method is a sequential command
And that's the problem. The thread that calls PlaySync is blocked until the sound finishes playing. If you call it from the UI thread, your entire application will freeze, and you'll get the "Application is not responding" message if you try to interact with it.
It might be OK for a very short sound, so long as you don't expect the UI to update whilst it's playing. But for anything longer than half a second, you need to play the sound from a background thread. Which is where the BackgroundWorker comes in.
Sprinkling Application.DoEvents() calls throughout your code is a hack, and a sign of code which needs to be changed.
"These people looked deep within my soul and assigned me a number based on the order in which I joined." - Homer
In Visual Studio C#. I cannot find a Text To Speech library in languages other than English, does Visual Studio C# support the Text To Speech library for Vietnamese ? or 3rd party supported libraries for C# language.
The following languages are now available for text to speech, with new languages in bold:
Arabic Croatian French Indonesian Polish Spanish
Bulgarian Czech German Italian Portuguese Swedish
Cantonese Danish Greek Japanese Romanian Tamil
Catalan Dutch Hebrew Korean Russian Thai
Chinese (Simplified) English Hindi Malay Slovak Turkish
Chinese (Traditional) Finnish Hungarian Norwegian SlovenianVietnamese
I never tried out this software, and time doesn't allow me to learn the API to write an application using it. Is this functionality integrated into some freely available application?
For a couple of years, a hobby of mine has been collecting Norwegian homographs, ie. words with identical spelling but different meaning and pronounciation. So I have written a text competing with "English is tough stuff": To entertain a party, ask one of those present to read the text out loud (with no preparations). I find it difficult myself to get everything right... I'd like to try out that text on some speech generator, to see how well it succeeds in determining the right pronounciation from context. (In a couple of places, two different pronounciations are valid, even in the same context, but the meaning is different. Most places, selecting the wrong pronounciation results in a meaningless statement.) Note that this is a Norwegian text; translation of such stuff is usually meaningless.
(My early interest in homographs were triggered in my teenage days, when I didn't know English that well, especially rock music terminology. So when I saw this LP cover where one guy was listed as playing lead guitar, I made a laugh, believing that it was a joking term for a heavy bass guitar, heavy as lead! I pointed it out to my buddies, and they thought I was making a really great joke - they never realized that I had truly misunderstood and misread the term!)
Hi Richard MacCutchan!
I am mistaken, in the list of Vietnamese language support, Apparently only support Vietnamese online ?
While I want to find the *.dll library that can be added to the program that runs offline, did you find the library to use offline for the C# programming language ?
I am writing a C# application that can control, monitor and upgrade firmware on 3 different hardware products. These products are accessed through registers and every once in a while registers are made obsolete or added (at the end). In my C# application I have a table of the latest versions this version of the C# application supports, e.g.:
If I try to communicate with a PRODUCT_1 of version 22.214.171.124 in the example above, my C# application would display an error message asking the user to obtain a newer version of the C# application.
I feel it would be nice to also give the actual C# application some kind of version or unique identifier. Of course, in the example above I could call it "version" 126.96.36.199 188.8.131.52 184.108.40.206, but as I add more products this "version" would become very long. I could use the same versioning format as the products (W.X.Y.Z), but is becomes difficult to manage when several persons work on separate branches on the different products in Git. I'm thinking that calculating a 4-byte CRC/hash on the supported versions would be a better option, but then I lose chronological information (it becomes hard to know which version is the latest version). So that would need to supplemented with a timestamp of some sort. Please note that I want the version/hash/time stamp to be compiled into the C# so it can be shown in a little "About"-box. Does anybody have any suggestions?
Another thing I was thinking of is to include the entire Visual Studio source code of my C# application project as a zip-file that can be downloaded from within my C# application by pressing a button "Get This Application's Source Code", that way I could always get the source code of an .exe file and then I could iterate through Git to find the most appropriate commit. Does anybody have experience with this and can share experiences?
I use a "minimum supported version" for new functionality. That version refers to the executable, which has it's build-number (part of the version) updated autmatically. When checking if something is available for the "current" version, I just check the first three and ignore the build altogether.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
"If you just follow the bacon Eddy, wherever it leads you, then you won't have to think about politics." -- Some Bell.
Please note that I want the version/hash/time stamp to be compiled into the C# so it can be shown in a little "About"-box.
You could use attributes for that matter. It would allow you to insert metadata in the executable about which version is supported for which product. Attributes (C#)[^]
Then, you can either access this metadata at runtime using reflection (and format proper error messages, for example), or inspect the assembly with ildasm.exe and get these informations.
"Five fruits and vegetables a day? What a joke!
Personally, after the third watermelon, I'm full."
I am working to fix the issue of Cross Side Scripting-XSS in asp.net with C#. team is using the burp interceptor to inject the script like this %uff1cscript%uff1ealert%uff08123456%uff09%uff1c/script%uff1e but I am tried several ways to encode this text to find out the html but I am not able to do it tried antixss and html encode but its not working.
please let us know how to handle these codes to fix the issue
A way to manage this is by adding the content-security-policy response header. If your site only uses internal scripts, you would set the script-src to self. Now, what happens if you rely on cdn's? Fortunately, these can be whitelisted in the same header. Ultimately, you would end up building a response header that looks like this: