我调用函数EnumWindows,参数1是个回调函数,在VC下可以测试通过,但是在wincc中提示错误:access violation,不知道是何原因,回调函数定义如下:BOOL CALLBACK EnumWindowsProc(HWND hwnd,long lParam)
不知道大家有遇到类似情况吗?
最佳答案
这个函数是需要SDK支持的!但wincc没有集成SDK,wincc的编译器没哪么强大,只是支持简单的脚本,所以这个不直接支持!
不过你可以做成DLL给WINCC调用!
你用VC都知道,里面有MFC框架,其实这个MFC框架是在SDK基础上做好了一部门编码工作了,你只要写自己的部分代码就是了!
系统自动生成不少代码的。如果你的代码脱离了SDK或者MFC的话,也不能直接编译连接的。
所以在VC下面,在编译连接这一不上是需要开发平台支持的,就比如C语言的printf()函数是C语言库函数,如果你没有那个库编译连接的话,C语言根本就不知道是啥玩意了。
参考资料:windows编程原理
提问者对于答案的评价:
做成DLL可以使用了
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc277364.html