refactor: switch to wide string

This commit is contained in:
k0t9i
2023-01-25 19:53:02 +04:00
parent f7198a13ef
commit eb7bfc779b
46 changed files with 284 additions and 293 deletions

View File

@@ -9,11 +9,11 @@ DWORD dwWritten;
BOOL fSuccess = FALSE;
DWORD cbRead, cbToWrite, cbWritten, dwMode;
int CreatePipe(std::string name)
int CreatePipe(std::wstring name)
{
while (1)
{
hPipe = CreateFileA(
hPipe = CreateFileW(
name.c_str(), // pipe name
GENERIC_READ | // read and write access
GENERIC_WRITE,
@@ -50,9 +50,9 @@ int CreatePipe(std::string name)
return 0;
}
std::string ReadMessage()
std::wstring ReadMessage()
{
char chBuf[10240];
wchar_t chBuf[10240];
do
{
// Read from the pipe.
@@ -60,7 +60,7 @@ std::string ReadMessage()
fSuccess = ReadFile(
hPipe, // pipe handle
chBuf, // buffer to receive reply
10240 * sizeof(char), // size of buffer
10240 * sizeof(wchar_t), // size of buffer
&cbRead, // number of bytes read
NULL); // not overlapped
@@ -68,27 +68,28 @@ std::string ReadMessage()
break;
} while (!fSuccess);
return std::string(chBuf);
return std::wstring(chBuf);
}
int main()
{
CreatePipe("\\\\.\\pipe\\PipeL2Bot");
CreatePipe(L"\\\\.\\pipe\\PipeL2Bot");
std::cout << "Connected to the connection pipe" << std::endl;
auto name = ReadMessage();
CloseHandle(hPipe);
std::cout << "Received main pipe name: " << name << std::endl;
std::wcout << L"Received main pipe name: " << name << std::endl;
std::cin.get();
CreatePipe(name);
const std::string message = "invalidate";
const std::wstring message = L"invalidate";
DWORD written;
WriteFile(hPipe, message.c_str(), message.size() + 1, &written, NULL);
while (true) {
std::cout << ReadMessage() << std::endl;
const auto msg = ReadMessage();
std::wcout << msg << std::endl;
}
std::cin.get();
}