Что нового

[Реестр] Изменение размера файла подкачки.

millifolium

Новичок
Сообщения
18
Репутация
1
Собственно код...после компиляции многократно запускает сам себя...В чем проблемма?

Код:
;pagefile
$a = MemGetStats()
Select
Case $a[1] <= 261963
RunWait(RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management", "PagingFiles", "REG_MULTI_SZ", "c:\pagefile.sys 512 512"))
Case 261963 < $a[1] AND $a[1] <= 523926
RunWait(RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management", "PagingFiles", "REG_MULTI_SZ", "c:\pagefile.sys 1024 1024"))
Case 523926 < $a[1] AND $a[1] <= 1047852
RunWait(RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management", "PagingFiles", "REG_MULTI_SZ", "c:\pagefile.sys 1536 1536"))
Case 1047852 < $a[1] AND $a[1] <= 2095704
RunWait(RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management", "PagingFiles", "REG_MULTI_SZ", "c:\pagefile.sys 2048 2048"))
Case 2095704 < $a[1] AND $a[1] <= 4191408
RunWait(RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management", "PagingFiles", "REG_MULTI_SZ", "c:\pagefile.sys 3072 3072"))
Case ELSE
RunWait(RegWrite("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management", "PagingFiles", "REG_MULTI_SZ", "c:\pagefile.sys 4096 4096"))
EndSelect
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
millifolium,
Уберите RunWait() и код поправьте на теги AutoIt.
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
millifolium,
MemGetStats() возвращает данные в кб, а Вы, похоже, используете б. И так меньше писать:
Код:
$sValue = 'c:\pagefile.sys '
;...
Switch $aMemory[1]
	Case 1 To 261963
		$sValue &= '512 512'
	Case 261964 To 523926
		;...
		;и т.д.
EndSwitch
RegWrite('HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management', 'PagingFiles', 'REG_MULTI_SZ', $sValue)
 

AZJIO

Меценат
Меценат
Сообщения
2,874
Репутация
1,194
millifolium
Немного упростил

Код:
; вариант 1
;pagefile
$a = MemGetStats()
Select
	Case $a[1] <= 261963
		$size=512
	Case 261963 < $a[1] And $a[1] <= 523926
		$size=1024
	Case 523926 < $a[1] And $a[1] <= 1047852
		$size=1536
	Case 1047852 < $a[1] And $a[1] <= 2095704
		$size=2048
	Case 2095704 < $a[1] And $a[1] <= 4191408
		$size=3072
	Case Else
		$size=4096
EndSelect
RegWrite("HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management", "PagingFiles", "REG_MULTI_SZ", "c:\pagefile.sys "&$size&" "&$size)

; вариант 2
$a = MemGetStats()
Switch $a[1]
	Case 1 To 261963
		$size=512
	Case 261964 To 523926
		$size=1024
	Case 523927 To 1047852
		$size=1536
	Case 1047853 To 2095704
		$size=2048
	Case 2095705 To 4191408
		$size=3072
	Case Else
		$size=4096
EndSwitch
RegWrite("HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management", "PagingFiles", "REG_MULTI_SZ", "c:\pagefile.sys "&$size&" "&$size)
 
Верх