これは初めてのことですが、ウィンドウを使用して並列処理を行いたいですCreateProcess機能。 MSDNの例に基づいて、私はこのエラーC3861: '_tcsdup':識別子が見つかりません
if (!CreateProcess(NULL, szCmdline, /*...*/)) cout << "ERROR: cannot start CreateProcess" << endl;
そして、これらのヘッダのようCreateProcess
に渡されLPTSTR
"(non-const) TCHAR string"command lineこの
LPTSTR szCmdline[] = _tcsdup(TEXT("\C:\\MyProgram_linux_1.1\\MyProgram.exe"));
LPTSTRなどの引数およびその他のchar and string types are discussed here
コマンドライン引数を作成しました存在する
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <strsafe.h>
#include <direct.h>
では、このコンパイルエラーです。このエラーの
error C3861: '_tcsdup': identifier not found
検索がthe same error but the solution was specific to using a .NET frameworkを発見したのではなくerror C3861: '_tcsdup'
ない、それが関連するかどうかわからを説明するが、if (!CreateProcess(NULL, szCmdline, /*...*/)) cout << "ERROR: cannot start CreateProcess" << endl;
上error C2059: syntax error : ')'
もありますこのエラーはどのように解決されますか?そして、これで何が起こっているのですか?
また、私はCreateProcess
as a learning step towards learning the Linux fork()
機能を使用しています - Visual Studioのインターフェイスは、私が使用しやすいであり、これは、デバッグおよび著作された後、私はそこからfork()
およびデバッグにG ++インターフェイスと変更に変更されます - そうソリューション可能であればfork()
につながるのが最も有益です。
:
実際に応じて、それらのいずれかに設定_tcsdumpマップを検索します'_tcsdup'を' strdup'に変更し、 'T'マクロの使用を止めてください)。 –
うわー...あなたは 'CreateProcess'を使って' fork'を学んでいますか?なぜフォークを学ばないのですか?これらは非常に異なる獣です。 – nneonneo
'fork'と' CreateProcess'の共通点は、それらが両方とも関数であることだけです... 'CreateProcess'を使ってみると、フランス語が日本語を話すのに役立つように' fork'を理解するのに役立つでしょう。 –