Python int太大,无法在Python COM中转换为C long

Python int太大,无法在Python COM中转换为C long,python,c,idl,Python,C,Idl,我有一个python方法来计算值并返回它。 价值是 CalcData = 3941269503L. 它只有32位。但这是隐式类型转换为long(后缀为L),当我在其他应用程序的COM中访问此方法时,我得到的Python int太大,无法转换为C long错误。我甚至试着把它输入int,但运气不好,因为“long”C类型是有符号的,所以它能存储的最大正值是2147483647。这个错误确实是正确的,它不合适 试试常量上的“unsigned long”和“UL”后缀。是的,你是对的,我不知道它是

我有一个python方法来计算值并返回它。 价值是

CalcData = 3941269503L. 
它只有32位。但这是隐式类型转换为long(后缀为L),当我在其他应用程序的COM中访问此方法时,我得到的Python int太大,无法转换为C long错误。我甚至试着把它输入int,但运气不好,因为“long”C类型是有符号的,所以它能存储的最大正值是2147483647。这个错误确实是正确的,它不合适


试试常量上的“unsigned long”和“UL”后缀。

是的,你是对的,我不知道它是否有符号