I'm not sure which DrawText() function that is, but you might check and see if a second argument of '-1' is taken to mean 'treat the input string as null-terminated'. If so, you could just submit -1 and avoid the problem entirely.For everything but the size_t warnings, they are API function return values being used as arguments for other API functions.
What are you trying to accomplish doing these conversions?
For the size_t warnings, I get it for using vector/string's .size() as input into a API functions.
ID2D1HwndRenderTarget->DrawText(wstring.c_str(), wstring.size(), ...etc...);
Otherwise, assuming you know what you're doing, you can use static_cast<>(), as mentioned previously. The case of needing to submit an unsigned integer value to an API that expects a signed integer is fairly common, I think, and a static_cast should be fine in that case. (I'd be more wary of casting a floating-point type to an integer type though. There are certainly cases where that's appropriate, but just be sure you have a good reason for doing it.)