2012-05-13 54 views
1

我在一个名为Titanium的基于JS的框架中编写了一个应用程序。这个框架没有一些功能,所以我捆绑了autohotkey,并使用STDIN/STDOUT来连接这两个。 Autohotkeys有一个很酷的功能DllCall,它允许与操作系统相互配合,并应该帮助我缩小基于JS的框架和缺少的功能之间的差距。关于Windows DLL的一些问题?

为了举一个例子,Titanium允许我绑定到特定的端口。但是,如果我绑定到0并让操作系统选择一个空闲端口(它应该),它将起作用,但是无法确定它实际绑定到的端口。

现在因为我来自web应用程序,所以DLL对我来说是新的;所以我有几个问题:

  1. 是否有像所有的DLL和所有他们的方法的大文档?
  2. 如何知道某些方法是否依赖某些服务?我的意思是我听说过一些依靠RPCs,COM,COM +,WMIs等用户可以关闭,如果这样做,这些方法将无法正常工作。是否还有一个地方可以让我获得更多信息?
  3. 是否有任何现成的DLL和他们的方法,我可以相信他们可以在XP中以100%的速度工作到7?
  4. 我应该知道哪些访问权限?他们是否有记录。
  5. 如果你也来自网络编程,还有什么我应该知道的?

非常感谢。

+0

这包含在MSDN提供的Windows API文档中。你需要的具体功能是getsockname()。当你发现仅仅调用函数是不够的,你还需要给它们提供适当的参数。获取您需要的套接字句柄getsockname()应该很难,这些是库有意隐藏的实现细节。 –

+0

我发现的例子似乎处理打开句柄,传递参数和关闭这些句柄;但为什么他们故意隐藏实施细节? –

+0

不是Windows SDK函数,您的Titanium框架。 –

回答

1

你可以在MSDN上在线或使用Windows SDK的文档找到所有Windows API函数(驻留在DLL中)的大部分完整文档。

例如查看文档SHGetSpecialFolderPath。在那里你可以找到各种信息,如DLL(shell32.dll),任何先决条件(最小IE 4)和平台可用性。 (至少Windows 2000)还记录了安全考虑因素。

以这种方式或多或少地记录了所有API函数。一个好的起点是Windows Developer Reference。从那里你可以浏览许多API函数。

0

基本上回答每一个问题是,你应该在MSDN中查找你所感兴趣的功能或API和阅读存在的文档:

http://msdn.microsoft.com/en-us/library/ms123401.aspx

他们记录其操作系统的功能都可用因此应该很容易编写在Windows XP中运行的某些内容。