You can actually just use a FPlatformNamedPipe object (Runtime/Core/Public/HAL/PlatformNamedPipe.h) which will wrap all that code for you in a platform independent way and will make the call to CreateFile for you. If you still want to manage that pipe yourself, you can look at Runtime/Core/Private/Windows/WindowsPlatformNamedPipe.cpp which calls CreateFile and just uses the * operator on an FString to pass it to the windows API call.
Note: as a little tip, try to right click to LPCTSTR and peek definition, this show you the typedef for it, and the go again to find the common ancestor, in this case your will see is the same as LPCWSTR and PCTSTR also for WCHAR and in the very end is wchar_t*, so thats way i use wstring
I know this is an old threat, but for those who are looking for a solution:
In 4.26 and 4.27 (and maybe earlier versions too) there is no c_str() member of FString. However, if you are using the WCHAR versions (LPCWSTR) you can use *FStringVar.