Use the *n*printf_s functions with _TRUNCATE
Use the *n*printf_s functions with _TRUNCATE

Any of the ETWMarkPrintf family of functions would terminate the program
if asked to print more than 1,000 characters. This is because they use
the *printf_s family of functions instead of using the *n*printf_s
family. That is, they were using _s functions with the
terminate-on-overflow policy. In this context it is reasonable and
appropriate to truncate-instead-of-terminate.

A quick check of other uses showed no other places where _TRUNCATE was
needed.

This will resolve this issue which, it must be said, is *not* a security
bug, despite !analyze's hysterical claims:
https://github.com/google/UIforETW/issues/70

!analyze says:
    "c0000409 (Security check failure or stack buffer overrun)"
Yeah, 'cause these are practically the same thing, right? No, they are
not.

And later it says:
    "0xc0000409 - The system detected an overrun of a stack-based buffer
    in this application. This overrun could potentially allow a
    malicious user to gain control of this application."

Again, no. The _s set of functions reliably detect when an overrun
*would* happen, and then they don't do it. It's a bug, to be sure, but
it is not a security vulnerability.

This is better characterized as a potential denial of service. Since it
is in functions that are designed to be use by other products this is
potentially serious, but not a security issue.

ariccio/UIforETW,google/UIforETW,ariccio/UIforETW,ariccio/UIforETW,ariccio/UIforETW,MikeMarcin/UIforETW,MikeMarcin/UIforETW,mwinterb/UIforETW,google/UIforETW,mwinterb/UIforETW,google/UIforETW,google/UIforETW,mwinterb/UIforETW,MikeMarcin/UIforETW