本文整理汇总了C++中One::GetEnvironment方法的典型用法代码示例。如果您正苦于以下问题:C++ One::GetEnvironment方法的具体用法?C++ One::GetEnvironment怎么用?C++ One::GetEnvironment使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类One
的用法示例。
在下文中一共展示了One::GetEnvironment方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Create
bool Pdb::Create(One<Host> local, const String& exefile, const String& cmdline)
{
STARTUPINFO si;
ZeroMemory(&si, sizeof(STARTUPINFO));
si.cb = sizeof(STARTUPINFO);
si.dwFlags = 0;
String cl;
if(exefile.Find(' ') >= 0)
cl << '\"' << exefile << '\"';
else
cl << exefile;
if(!IsNull(cmdline))
cl << ' ' << cmdline;
Buffer<char> cmd(cl.GetLength() + 1);
memcpy(cmd, cl, cl.GetLength() + 1);
PROCESS_INFORMATION pi;
ZeroMemory(&pi, sizeof(PROCESS_INFORMATION));
Buffer<char> env(local->GetEnvironment().GetCount() + 1);
memcpy(env, ~local->GetEnvironment(), local->GetEnvironment().GetCount() + 1);
bool h = CreateProcess(exefile, cmd, NULL, NULL, TRUE,
NORMAL_PRIORITY_CLASS|CREATE_NEW_CONSOLE|DEBUG_ONLY_THIS_PROCESS|DEBUG_PROCESS,
~env, NULL, &si, &pi);
if(!h) {
Exclamation("Error creating process&[* " + DeQtf(exefile) + "]&" +
"Windows error: " + DeQtf(GetLastErrorMessage()));
return false;
}
hProcess = pi.hProcess;
CloseHandle(pi.hThread);
IdeSetBottom(*this);
IdeSetRight(disas);
LoadFromGlobal(*this, CONFIGNAME);
if(!SymInitialize(hProcess, 0, FALSE)) {
Error();
return false;
}
SymSetOptions(SYMOPT_LOAD_LINES|SYMOPT_UNDNAME|SYMOPT_NO_UNQUALIFIED_LOADS);
lock = 0;
stop = false;
refreshmodules = true;
terminated = false;
running = true;
RunToException();
// Sync();
return true;
}
示例2: GetEnvironment
virtual String GetEnvironment() { return host->GetEnvironment(); }