运行bat,环境变量更新即时有效
网上找了很多资料,都或多或少都有问题,下面的是调试成功的
------------------------------------------
:: 环境变量更新即时有效
:: 这个写法是关键!!'"Environment"',另外,不能直接用0值,只能用[UIntPtr]::Zero,其他形式的写法可能都不行
powershell (Add-Type '[DllImport(\"user32.dll\")]^public static extern IntPtr SendMessageTimeout(IntPtr hWnd, uint Msg, UIntPtr wParam, string lParam, uint fuFlags, uint uTimeout, out UIntPtr lpdwResult);' -Name a -Pas)::SendMessageTimeout([IntPtr]0xffff, 0x1a, [UIntPtr]::Zero, '"Environment"', 2, 5000, [ref] [uintptr]::zero)
pause |