在Python中使用C++代码

2024-10-16 17:28:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下C++,这两个函数返回int 0,表示成功。在

#include "stdafx.h"
#include <iostream>
#include "scapi.h"


int main() {

    int ret;

    ret = sc_LoginByLogon(L"hostname.domain.ltd", L"admin", L"pass");
    std::cout << "LoginByLogon: " << ret << std::endl;

    void* out_p;

    ret = sc_GetUserInfoByUserLogon(L"username", &out_p);
    std::cout << "GetUserInfoByUserLogon: " << ret << std::endl;
}

我现在正试图用Python为这两个函数创建一个包装器,并给出了以下代码:

^{pr2}$

代码应该可以工作,但是在Python中只有sc_ginbylogon返回0,而sc_ghtuserinfobyuserlogon失败(1)。The documentation只声明“1=一般故障”,所以我被卡住了。在

任何明显的想法都将得到高度赞赏。在


Tags: 函数代码includeoutintstdscret
1条回答
网友
1楼 · 发布于 2024-10-16 17:28:29

多亏了marktolonen,在调用之前显式定义了login函数之后,它现在可以工作了。我不认为我必须这样做,因为它已经返回了表示成功的int 0。在

唯一的问题是,由于某些原因,所有属性(如“müwzFullName”)都会跳过第一个字符。在

编辑: 我解决了最后一个错误,这要归功于这条线索: python ctypes pragma pack for byte aligned read

^{1}$

相关问题 更多 >