我正在尝试按照Boost.python中的教程.
我的环境在标题中.
当我尝试bjam时收到以下错误:
C:\ local\boost_1_57_0\libs\python\example\tutorial> bjam.exe address-model = 64 ...耐心......耐心......找到1894个目标......更新6个目标... msvc.link.dll bin\msvc-12.0\debug\address-model-64\threading-multi\hello_ext.pyd
创建库bin\msvc-12.0\debug\address-model-64\threading-multi\hello_e xt.pdb和object bin\msvc-12.0\debug\address-model-64\threading-multi\hello_ext .exp LINK:fatal错误LNK1207:'C:\ local\boost_1_57_0\li \nbs\python\example\tutorial\bin\msvc-12.0\debug\address-model-64\threading-multi\hello_ext.pdb'中不兼容的PDB格式; 删除并重建
Run Code Online (Sandbox Code Playgroud)call "C:\Users\Navid\AppData\Local\Temp\b2_msvc_12.0_vcvarsall_x86_amd64.cmd"> nul link/NOLOGO/INCREMENTAL:NO/DLL/NOENTRY/DEBUG/MACHINE:X64/MANIFEST/subsys tem:console /out:"bin\msvc-12.0\debug\address-model-64\threading-multi\hello_ext .pyd"/IMPLIB:
"bin\msvc-12.0 \debug\address-model-64\threading-multi\hello_ext.pd b"/ LIBPATH:"C:\ Python34\libs" @"bin\msvc-12.0\debug\address-model-64\threadin g-multi\hello_ext.pyd.rsp"if%ERRORLEVEL%NEQ 0 EXIT%ERRORLEVEL%...失败msvc.link.dll bin\msvc-12.0\debug\address-model-64\threading-multi\hel lo_ext.pyd bin\msvc-12.0\debug\address-model-64\threading-multi\hello_ext .pdb bi n\msvc-12.0\debug\address-model-64\threading-multi\hello_ext.pdb ...... ...删除bin\msvc-12.0\debug\address-model-64\threading-multi\hello_ext .pdb ...跳过hello_ext.pyd缺少hello_ext.pyd ... copy bin\hello.test\msvc-12.0\debug\address-model-64\threading-multi\hello.py hello.py 1 file( s)复制.2to3 bin\hello.test\msvc-12.0\debug\address-model-64\threading-multi\hello.py'2to3'未被识别为内部或外部命令,可运行程序或批处理文件.'2to3'不被识别为内部或外部命令,可操作程序或批处理文件.
Run Code Online (Sandbox Code Playgroud)2to3 -wn --no-diffs "bin\hello.test\msvc-12.0\debug\address-model-64\threading-multi\hello.py"2to3 -dwn --no-diffs"bin\hello.test\msvc-12.0\debug\address-model-64\thread ing-multi\hello.py"
...失败2to3 bin\hello.test\msvc-12.0\debug\address-model-64\threading-multi\h ello.py ...... ...删除bin\hello.test\msvc-12.0\debug\address-model-64\threading-multi\hell o.py ...因缺乏而跳过hello
hello.py ......未能更新3个目标......跳过3个目标......
我确定.\ b2 adress-model = 64和\ turorial> bjam …
我正在建立一个Flask/uswgi网络服务器.我仍然想知道微服务架构:
我应该将带有uwsgi的nginx和Flask放在一个容器中,还是将它们放在两个不同的容器中并将它们连接起来?
我打算在Kubernetes集群中运行这些服务.
谢谢
首先感谢您花时间阅读这个问题。
我使用以下代码从交互式用户下的 Windows 服务成功启动了应用程序可执行文件(让我们称之为MyApp.exe ):
#MyWindowsService.py
console_session_id = win32ts.WTSGetActiveConsoleSessionId()
console_user_token = win32ts.WTSQueryUserToken(console_session_id)
my_app_path= os.path.normpath(r"/Path\to\MyApp.exe")
startup = win32process.STARTUPINFO()
priority = win32con.NORMAL_PRIORITY_CLASS
handle, thread_id ,pid, tid = win32process.CreateProcessAsUser(console_user_token, my_app_path, None, None, None, True, priority, None, None, startup)
Run Code Online (Sandbox Code Playgroud)
从 MyApp 内部,我需要获取属于交互式用户的环境路径。例如,我使用以下代码来获取用户的%appdata%的路径:
#MyApp.py
user_app_data_path = os.getenv('APPDATA')
Run Code Online (Sandbox Code Playgroud)
它应该返回:
C:\Users\交互式用户名\AppData\Roaming
然而返回值是:
C:\Windows\System32\config\systemprofile\AppData\Roaming
这意味着虽然MyApp.exe是在交互式用户名下启动的,但它获取的是Windows服务运行所在的SYSTEM用户的环境。
我的问题是如何获取属于用户而不是系统的环境路径。
多谢,
PS 我正在使用 py2exe 将 MyApp 和 Windows 服务转换为可执行文件。