本文目录一览:
- 1、windows api 和c++/CLR之疑问
- 2、windows api什么意思?什么是API
- 3、windows API 是什么
- 4、linux的API和windows的API一样吗 能互相通用吗
- 5、处理大数据,读写大于4GB的文件,不要告诉我用内存映射的方法;
windows api 和c++/CLR之疑问
1, 对。
Windows API 都是C函数。
C++/CLI属于 C++上的.NET开发。 使用NET FRAMEWORK库作为运行基础。
NET FRAMEWORK是基于API的。 是对API的封装。
2. 必须依赖NET FRAMEWORK
3. API 开发的话看你的程序使用库的方式, 使用共享dll方式的话, 目标机器上必须安装C++运行库。
使用静态库的话, 则没有其他依赖就可以直接运行, 缺点是静态库把用到的函数都打包集成了, 所以程序体积会比较大。
4. 发型包, 同上
windows api什么意思?什么是API
windows
api是一套用来控制windows的各个部件(从桌面的外观到为一个新进程分配的内存)的外观和行为的一套预先定义的windows函数.用户的每个动作都会引发一个或几个函数的运行以告诉windows发生了什么.-windowsapi吧
这在某种程度上很象windows的天然代码.其他的语言只是提供一种能自动而且更容易的访问api的方法.vb在这方面作了很多工作.它完全隐藏了api并且提供了在windows环境下编程的一种完全不同的方法.-windowsapi吧
这也就是说,你用vb写出的每行代码都会被vb转换为api函数传递给windows.例如,form1.print...vb
将会以一定的参数(你的代码中提供的,或是默认参数)调用textout
这个api函数
。同样,当你点击窗体上的一个按钮时,windows会发送一个消息给窗体(这对于你来说是隐藏的),vb获取这个调用并经过分析后生成一个特定事件(button_click).
api函数包含在windows系统目录下的动态连接库文件中(如user32.dll,gdi32.dll,shell32.dll...).
更易理解地说:windows
这个多作业系统除了协调应用程式的执行、分配内存、管理系统资源…之外,
她同时也是一个很大的服务中心,调用这个服务中心的各种服务(每一种服务就是一个函数),可以帮应用程式达到开启视窗、描绘图形、使用周边设备…等目的,由於这些函数服务的对象是应用程式(application),-windowsapi吧
所以便称之为
application
programming
interface,简称
api
函数。win32
api也就是microsoftwindows
32位平台的应用程序编程接口。
凡是在
windows
工作环境底下执行的应用程式,
都可以调用windows
api。
windows API 是什么
Windows 这个多作业系统除了协调应用程序的执行、分配内存、管理资源…之外, 她同时也是一个很大的服务中心,调用这个服务中心的各种服务(每一种服务就是一个函数),可以帮应用程式达到开启视窗、描绘图形、使用周边设备等目的,由于这些函数服务的对象是应用程序(Application), 所以便称之为 Application Programming Interface,简称 API 函数。WIN32 API也就是Microsoft Windows 32位平台的应用程序编程接口。-windowsapi吧
具体见百度百科中的windows API 详解
linux的API和windows的API一样吗 能互相通用吗
linux的API? 这个没有调用过
windowsAPI,就是win32 API吧。
两者的API肯定不一样,怎么可能通用。 系统架构都不同,况且如果可以通用,那2者之间的软件通用性就强太多了。
可惜不可能。
处理大数据,读写大于4GB的文件,不要告诉我用内存映射的方法;
C语言的文件长度获取函数最大值到4GB就溢出了。
用windows api吧,获取文件长度GetFileSize分为高地位分别从返回值和参数返回。
写入时可通过WriteFile的lpOverlapped参数设置偏移值,能支持更大的文件。
参数虽然多一点,可是总能解决你的问题。如果调用的地方很多,你可以把这几个函数封装一下,很多参数调用时都是一样的。希望对你有帮助。
DWORD WINAPI GetFileSize(
__in HANDLE hFile,
__out_opt LPDWORD lpFileSizeHigh
);
BOOL WINAPI WriteFile(
__in HANDLE hFile,
__in LPCVOID lpBuffer,
__in DWORD nNumberOfBytesToWrite,
__out_opt LPDWORD lpNumberOfBytesWritten,
__inout_opt LPOVERLAPPED lpOverlapped
);
HANDLE WINAPI CreateFile(
__in LPCTSTR lpFileName,
__in DWORD dwDesiredAccess,
__in DWORD dwShareMode,
__in_opt LPSECURITY_ATTRIBUTES lpSecurityAttributes,
__in DWORD dwCreationDisposition,
__in DWORD dwFlagsAndAttributes,
__in_opt HANDLE hTemplateFile
);
Requirements
Minimum supported clientWindows XP
Minimum supported serverWindows Server 2003
HeaderFileAPI.h (include Windows.h);WinBase.h on Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003, and Windows XP (include Windows.h) -windowsapi吧
LibraryKernel32.lib
DLLKernel32.dll
Unicode and ANSI namesCreateFileW (Unicode) and CreateFileA (ANSI)