小编tos*_*osa的帖子

py2exe"包含"模块:何时应手动管理?

什么时候需要指定要包含的模块?是不是py2exe搜索并包含所需的任何内容:http://www.py2exe.org/index.cgi/FAQ

为什么它包含未使用的模块,例如["Tkconstants","Tkinter","tcl","wx"](我使用Qt,但在我的电脑上安装了wx),然后需要被排除在外?

python py2exe

6
推荐指数
1
解决办法
2万
查看次数

将byref参数传递给Python的VB6 COM DLL

我有一个VB6 COM DLL,其函数声明如下:

Public Function testFunc(ByRef v1 As Long) As Boolean
Run Code Online (Sandbox Code Playgroud)

当我尝试使用Python2.7调用它时:

var1 = c_long()
VB6DLL.testFunc(X1)
Run Code Online (Sandbox Code Playgroud)

如果X1是var1,那么我得到异常:"int()参数必须是字符串或数字,而不是'c_long'"

如果X1是yref(var1),那么我得到异常:"int()参数必须是字符串或数字,而不是'cArgObject'"

如果VB6函数使用ByVal参数并从Python发送正确的参数,一切都很好.那么如何发送引用,因为我希望DLL修改值?为什么ByRef参数变成int()?

python vb6 byref

5
推荐指数
0
解决办法
634
查看次数

为什么malloc会失败?

当编译器到达函数末尾的赋值时,会发生指针预期错误.为什么?

(从代码中删除了强制转换和索引符号;它们用于"调试"购买显然混乱了我的问题.)

int createArraySimple(int initialResetCount, int ***array)
{
    int sourceTermIndex, driveCurrentIndex, preEmphasisIndex, freqIndex, voltageIndex, slicerIndex, biasIndex;
    int dataIndex, dataCount = 3;

    *array = malloc(2*sizeof(int**));                                       // sourceTerm
    if (*array == NULL)
        return 0;
    for (sourceTermIndex=0; sourceTermIndex < 2; sourceTermIndex++)                 
    {
        *((*array)+sourceTermIndex) = malloc(2*sizeof(int*));                           // drive current
        if (*((*array)+sourceTermIndex) == NULL)
            return 0;
        for (driveCurrentIndex=0; driveCurrentIndex < 2; driveCurrentIndex++)
        {
            *((*((*array)+sourceTermIndex))+driveCurrentIndex = malloc(2*sizeof(int));  // pre-emphasis
            if (*((*((*array)+sourceTermIndex))+driveCurrentIndex) == NULL)
                return 0;
        }
    }

    //'initialize elements in array, since if they are not …
Run Code Online (Sandbox Code Playgroud)

c malloc

1
推荐指数
1
解决办法
846
查看次数

标签 统计

python ×2

byref ×1

c ×1

malloc ×1

py2exe ×1

vb6 ×1