小编sim*_*scu的帖子

Delphi5中浮点除零异常

我的应用程序是用Delphi5编写的.我正在使用madExcept来追踪错误.我追踪了一个"浮点dvision by zero"异常,它不应该是.引发它的代码段如下:

val:=100*Power(1.25,c);
Run Code Online (Sandbox Code Playgroud)

其中'c'实际上总是具有值'1'.

日志的堆栈跟踪:

main thread ($338f8):
00403504 +010 MyApp.exe   System   1970  +5 @FRAC
00479148 +058 MyApp.exe   Math              Power
007ae8a6 +262 MyApp.exe   MyClass  1962 +36 TMyClass.FormMouseWheel
Run Code Online (Sandbox Code Playgroud)

我有一个例外,一个分区确实发生了,但是除数是一个变量,当异常发生时它也有一个值'1'.我能够调试和重现.

我的问题:我错过了什么?浮点除法是否有一些我不知道的误报?

此外:我没有在异常点使用任何C++ DLL,因为它们倾向于以不同方式处理FP分区(返回NaN或+/- INF而不是引发异常).

任何指针赞赏.

delphi floating-point division delphi-5 divide-by-zero

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

FastMM无法检测到内存泄漏

我在Delphi5的应用程序中使用FastMM 4.97.

一切都运行良好,如果我从IDE运行我的应用程序,故意泄漏用于测试目的.我得到适当的通知和错误日志.

但是,如果我在IDE之外运行我的应用程序(从Windows资源管理器运行.exe文件),则不会发生任何事情.

我错过了什么吗?这种行为是有意的吗?可以改变吗?

delphi memory-leaks memory-management delphi-5 fastmm

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

OSX 应用程序崩溃:代码签名无效

我有一个在 AppStore 之外分发的 OSX 应用程序。因此,我使用相应的证书(开发人员 ID 应用程序证书)对其进行签名。

该应用程序本身是用 Freepascal (Lazarus) 编写的,并且有一个用 C++ 编写的依赖库,我也签署了该库。我还通过使用 install_name_tool 并在路径前加上@loader_path 将 lib 的路径更改为相对于应用程序。在当地对我来说就像一种魅力。

该应用程序(据我所知)在 OSX 10.11.6 上运行正常,但在 OSX 10.10.5 上崩溃,说:库未加载:@loader_path/libMyAPP.dylib 引用自:/Users/USER/Downloads/MyAPP.app/目录/MacOS/MyAPP 原因:找不到合适的图像。确实发现:/Users/Steve/Downloads/MyAPP.app/Contents/MacOS/libMyAPP.dylib: 代码签名对“/Users/Steve/Downloads/MyAPP.app/Contents/MacOS/libMyAPP.dylib”无效

/Users/Steve/Downloads/MyAPP.app/Contents/MacOS/libMyAPP.dylib:“/Users/Steve/Downloads/MyAPP.app/Contents/MacOS/libMyAPP.dylib”的代码签名无效

任何指示可能会发生什么?这真的是代码签名问题还是其他问题?谢谢。

macos freepascal code-signing objective-c lazarus

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

混合OpenGL ES 2.0和3.0

我正在尝试将iOS项目移植到Android(java).然而,我遇到了一些ES 2.0扩展功能(OES),这些功能没有出现在Android GLES20 API中:

glGenVertexArraysOES glBindVertexArrayOES glDeleteVertexArraysOES

看来我必须从NDK调用这些函数,在运行时动态绑定扩展并检查支持od设备.不是我喜欢做的事情.

谷歌搜索时我在GLES30 api中找到了这些功能.所以我的问题是: - 可以混合使用GLES20和G​​LES30吗? - 这些函数基本上是调用相同的API还是完全不同? - 任何其他建议?

android opengl-es

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