AU3关于多核CPU关系设置
如题,如何让Au3控制程序CPU关系,有这样的函数吗?望知道的指导一下,谢谢 没有人会吗? AU3没有相关硬件控制的函数。可以借助外部DLL或者EXE实现。 第一个参数是进程PID,第二个参数是CPU ID( 从1起,而不是从0起)ProcessSetAffinity(1464,2)Func ProcessSetAffinity($iProcessID,$iProcessor = 1)
Local $i_PID = ProcessExists($iProcessID)
If Not $i_PID Then
SetError(1)
Return -1
EndIf
Local $hDLL = DllOpen('kernel32.dll')
Local $aProcessHandle = DllCall($hDLL, 'int', 'OpenProcess', 'int', 0x0200, 'int', False, 'int', $i_PID)
if $aProcessHandle = 0 Then
SetError(2)
Return -1
EndIf
Local $aAffinity = DllCall($hDLL, 'int', 'SetProcessAffinityMask', 'int', $aProcessHandle, 'int', $iProcessor)
DllCall($hDLL, 'int', 'CloseHandle', 'int', $aProcessHandle)
DllClose($hDLL)
Return $aAffinity
EndFunc;==>ProcessSetAffinity
页:
[1]