首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

请教 一些API函数在 2000和XP中有没有区别

2012-01-22 
请问 一些API函数在 2000和XP中有没有区别DimAAAsDoubleDimpHndAsLongAAShell(App.Path+\exename.exe,3

请问 一些API函数在 2000和XP中有没有区别
Dim   AA   As   Double
Dim   pHnd   As   Long                

AA   =   Shell(App.Path   +   "\exename.exe   ",   3)
pHnd   =   OpenProcess(&H100000,   0,   AA)
If   pHnd   <>   0   Then
              Call   WaitForSingleObject(pHnd,   &HFFFFFFFF)
              Call   CloseHandle(pHnd)
              '执行下面的程序
End   If

以上这段代码的功能是   等   exename.exe   运行结束后在执行   下面的程序
在2000中没问题,但在   XP中   “执行   下面的程序”就不正常。我怀疑是不是和上面的几个API有关,或者有没有   和上面代码相同功能的别的代码。


[解决办法]
Dim AA As Double

改为
Dim AA As long
[解决办法]
与API相关操作的数据都是整型的Long或integer(至少我还没见过用浮点的)

WaitForSingleObject要求有SYNCHRONIZE权限

热点排行