Get Environment Variable?

BlitzMax Forums/BlitzMax Programming/Get Environment Variable?

Unreliable method 1
Function GetEnv:String(env_var:String)
	Return String(getenv_(env_var))
End Function


Reliable method 2
' Extern
' Function GetEnvironmentVariableA(VarName:Byte Ptr,back:Byte Ptr,size:Short)

Function GetEnvVar:String(VarName:String)
		Local TempBank:TBank = CreateBank(1)
		Local size:Int = GetEnvironmentVariableA(Varname,BankBuf(TempBank),1)
		If size > 0
			ResizeBank(Tempbank,Size+1)
			GetEnvironmentVariableA(Varname,BankBuf(TempBank),Size+1)
		Else
			Return ""
		EndIf
		
		Local tString:String = ""
		Local t:Int
		For t = 0 To BankSize(tempbank)-3
			tString = tString + Chr(PeekByte(tempbank,t))
		Next
		
		ResizeBank(TempBank,0)
		Return tString
End Function
credit to Indiepath on the second one