06. januar 2003 - 15:12Der er
26 kommentarer og 1 løsning
half-life server response / client online time datatype ?
Hej
Jeg har lavet et program der queryer en HL-server. Jeg hiver al informationen ud af det svar jeg får fra serveren, bortset fra den tid clienten har været online.
I den står der at online-tiden gives som (float32).
svaret fra serveren kan f.eks. se sådan ud "t¿ÎC" altså fire bytes. Mit spørgsmål er, hvordan får jeg konverteret disse 4 bytes til noget jeg kan bruge i visual basic ?? det skal ende med at blive et tidsformat (hh:mm:ss) .
Den moderne arbejdsplads er i stigende grad afhængig af mødelokaler til at fremme samarbejde, men dette skift medfører også stigende sikkerhedsudfordringer.
Private Function SecToTime(Sec As Variant) As String Dim Min As Variant Min = Format(Fix(Sec / 60), "00") SecToTime = Format(Fix(Min / 60), "00") & ":" & _ Format(Min Mod 60, "00") & ":" & _ Format(Sec Mod 60, "00") End Function
Private Sub Form_Load() 'Û·6D med byteværdierne : 219:183:54:68 'svarer til '00:12:08
Me.Caption = SecToTime(Float32(219) + Float32(183) + Float32(54) + Float32(68) * 4) End Sub
Private Function SecToTime(Sec As Variant) As String Dim Min As Variant Min = Format(Fix(Sec / 60), "00") SecToTime = Format(Fix(Min / 60), "00") & ":" & _ Format(Min Mod 60, "00") & ":" & _ Format(Sec Mod 60, "00") End Function
Public Function Float32(ByVal intNum As Integer) As Double Float32 = CDbl(CLng(intNum)) Mod 1000000000 End Function
Private Function SecToTime(Sec As Variant) As String Dim Min As Variant Min = Format(Fix(Sec / 60), "00") SecToTime = Format(Fix(Min / 60), "00") & ":" & _ Format(Min Mod 60, "00") & ":" & _ Format(Sec Mod 60, "00") End Function
Som sagt var eksempel tiderne kun ca. så jeg tror at det passer uden. Men jeg kan da lige tilføje et par tretaller hist og her for en sikkerheds skyld. thanx again ! :o)
public sub hiddenMessage MsgBox("3 is the magic number!") end sub
ja, den er overraskende simpel i forhold til den anden. Men jeg tror at den kun virker lige i denne sammenhæng, da jeg ved på forhånd at tallet jeg forventer ligger mellem -127 og 127
intFrags = Asc(strFourBytes)
If intFrags > 128 Then intFrags = -(256 - intFrags) End If
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.