草庐IT

ctype_alpha

全部标签

python - ctypes 加载具有依赖关系的 c 共享库

在Linux上,我有一个依赖于其他库的c共享库。LD_LIBRARY_PATH已正确设置以允许链接器加载所有库。当我这样做时:libgidcwf=ctypes.cdll.LoadLibrary(libidcwf_path)我收到以下错误:Traceback(mostrecentcalllast):File"libwfm_test.py",line12,inlibgidcwf=ctypes.cdll.LoadLibrary(libidcwf_path)File"/usr/lib/python2.5/ctypes/__init__.py",line431,inLoadLibraryretu

python - 使用 ctypes 列出从 dll 导出的函数

有没有办法知道通过python外部函数库ctypes从dll导出了哪些函数?如果可能的话,可以通过ctypes了解导出函数的详细信息。如果是,有人可以提供一段代码吗? 最佳答案 我认为ctypes不提供此功能。在带有VisualStudio的Windows上:DUMPBIN-EXPORTSXXX.DLL或者对于windows上的mingw:objdump-pXXX.dll 关于python-使用ctypes列出从dll导出的函数,我们在StackOverflow上找到一个类似的问题:

python - Python ctypes 中的指针和数组

我有一个包含C函数的DLL,其原型(prototype)如下:intc_read_block(uint32addr,uint32*buf,uint32num);我想使用ctypes从Python调用它。该函数需要一个指向一block内存的指针,它将结果写入其中。我不知道如何构造和传递这么一大块内存。ctypes文档帮助不大。构造一个数组并将其传递给“byref”,如下所示:cresult=(c_ulong*num)()err=self.c_read_block(addr,byref(cresult),num)给出这个错误信息:ArgumentError:argument3::expec

python - 如何使用 ctypes 将 Python 列表转换为 C 数组?

如果我有以下2组代码,如何将它们粘合在一起?voidc_function(void*ptr){inti;for(i=0;i如何使用x中的连续元素列表调用c_function?我试图将x转换为c_void_p,但这没有用。我也尝试使用类似的东西x=c_void_p*10foreiny:x[i]=e但这会出现语法错误。C代码显然需要数组的地址。我怎样才能做到这一点? 最佳答案 以下代码适用于任意列表:importctypespy_values=[1,2,3,4]arr=(ctypes.c_int*len(py_values))(*py_

python - 如何使用 ctypes 打包和解包(结构 <-> str)

这可能是一个愚蠢的问题,但我在文档或任何地方都找不到好的答案。如果我使用struct定义二进制结构,该结构有2种对称的序列化和反序列化方法(打包和解包),但似乎ctypes没有一个简单的方法来做到这一点。这是我的解决方案,感觉不对:fromctypesimport*classExample(Structure):_fields_=[("index",c_int),("counter",c_int),]defPack(ctype_instance):buf=string_at(byref(ctype_instance),sizeof(ctype_instance))returnbufde

python - ctypes - 初学者

我的任务是将c库“包装”到python类中。文档在这个问题上非常模糊。似乎他们希望只有高级python用户才能实现ctypes。一些循序渐进的帮助会很棒。所以我有我的c库。我该怎么办?我把什么文件放在哪里?如何导入库?我读到可能有一种“自动换行”到Python的方法?(顺便说一句,我在python.net上完成了ctypes教程,但它不起作用。意思是我认为他们假设我应该能够填写其余步骤。)事实上,这是我在使用他们的代码时遇到的错误:File"importtest.py",line1>>>fromctypesimport*SyntaxError:invalidsyntax我真的可以在这方

java - 设置布局的 Alpha/Opacity

是否可以设置和获取布局的Alpha/Opacity及其所有subview?我不是在谈论背景。在相对布局中说一组视频控件,例如播放、暂停和进度条。我可以使用动画淡入淡出,但想知道是否有直接的方法可以使用。 最佳答案 您可以使用持续时间为0的AlphaAnimation和setFillAfter选项在布局及其subview(或任何其他View)上设置alpha。例子:AlphaAnimationalpha=newAlphaAnimation(0.5F,0.5F);alpha.setDuration(0);//Makeanimationi

android - Android Studio 3.0-alpha8 中的 Kotlin apply() 扩展 lint 消息

我有以下代码会产生以下lint错误。funnewInstance(message:String?):DialogFragment{returnDialogFragment().apply{arguments=Bundle().apply{putString("arg",message)}}}消息指出,apply()函数中的this引用指向自API21以来可用的BaseBundle类,该类将崩溃较低的API。Bundle#putString(key,value)低版本肯定有,但是AndroidStudio3.0-alpha8有错误。这个问题很奇怪,因为我可以看到反编译的代码是这样的:引用

Android 在将 androidx 生物识别更新为 1.0.0-alpha04 后崩溃

使用'androidx.biometric:biometric:1.0.0-alpha03'一切正常,但是当我使用最新的'androidx.biometric:biometric:1.0.0构建项目时-alpha04'并调用myBiometricPrompt.authenticate(promptInfo)它会抛出此异常:FragmentManager已经在执行事务。这是堆栈跟踪:java.lang.IllegalStateException:FragmentManagerisalreadyexecutingtransactionsatandroidx.fragment.app.Fra

Android WorkManager 链式工作未在 alpha04 上运行

[更新]这已在alpha09中解决我有两件作品被WorkManageralpha04beginWith和thenapi链接起来。funupdateData(){createWorkRequests()runDataDownloadWork()}privatefuncreateWorkRequests(){dwElementsWork=OneTimeWorkRequestBuilder().addTag(TAG_ELEMENTS_WORK).build()dwElementTypesWork=OneTimeWorkRequestBuilder().addTag(TAG_ELEMENTS_