Gel de la session utilisateur sur Windows Server 2003

Une question, un bug ?
MichelC

Message par MichelC »

Voici un test fait sous VB2005 Express édition :
Imports System.IO

Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim Unknown As UInt32
Dim Timestamp As UInt32
Dim AbsolutePressure As Single
Dim WindSpeed As Single
Dim WindDirection As UInt32
Dim AbsoluteRainFall As Single
Dim IndoorTemperature As Single
Dim OutdoorTemperature As Single
Dim IndoorHumidity As Short
Dim OutdoorHumidity As Short
Dim HistoRead As New BinaryReader(File.OpenRead("c:history.dat"))
Dim i As Integer
Dim dt As DateTime
Dim dt1 As DateTime

' Première fois ?
If Me.TBNrEnreg.Text = "" Then
HistoRead.BaseStream.Seek(0, SeekOrigin.Begin)
Else
i = Me.TBNrEnreg.Text
HistoRead.BaseStream.Seek(i * 36, SeekOrigin.Begin)
' Fin du fichier ?
If i * 36 = HistoRead.BaseStream.Length - 28 Then
MsgBox("Fin du fichier!", MsgBoxStyle.Information)
Me.Close()
Exit Sub
End If
End If

Unknown = HistoRead.ReadUInt32
Timestamp = HistoRead.ReadUInt32
AbsolutePressure = HistoRead.ReadSingle
WindSpeed = HistoRead.ReadSingle
WindDirection = HistoRead.ReadUInt32
AbsoluteRainFall = HistoRead.ReadSingle
IndoorTemperature = HistoRead.ReadSingle
OutdoorTemperature = HistoRead.ReadSingle
IndoorHumidity = HistoRead.ReadUInt16
OutdoorHumidity = HistoRead.ReadUInt16

dt = New DateTime(1970, 1, 1)
dt1 = dt.AddSeconds(3600 + Math.Abs(Timestamp - 2208988800)) '+3600=GMT+1

'Affichage valeurs
'Me.TBPressure.Text = Format(Val(AbsolutePressure), "fixed")
Me.TBPressure.Text = AbsolutePressure.ToString("####.#")
Me.TBVentVit.Text = Val(WindSpeed)
Me.TBVentDir.Text = Val(WindDirection)
Me.TBPluie.Text = Val(AbsoluteRainFall)
Me.TBTempInt.Text = IndoorTemperature.ToString("##.#")
Me.TBTempExt.Text = OutdoorTemperature.ToString("##.#")
Me.TBHumiInt.Text = IndoorHumidity.ToString("##.#")
Me.TBHumiExt.Text = OutdoorHumidity.ToString("##.#")
i = HistoRead.BaseStream.Position / 36
Me.TBNrEnreg.Text = i.ToString("0###")
Me.TBDate.Text = dt1.ToString.Substring(0, 10)
Me.TBHeure.Text = dt1.ToString.Substring(11)
' *******
HistoRead.Close()
End Sub
MichelC
Nouveau membre
Messages : 1
Inscription : sam. janv. 06, 2007 7:28 pm

Message par MichelC »

Pour compléter mon message précédent il vaudrait mieux écrire :

Me.TBTempInt.Text = IndoorTemperature.ToString("##0.#")
Me.TBTempExt.Text = OutdoorTemperature.ToString("##0.#")
pour voir le zéro si la température est comprise entre -1 et +1 °

Il faudrait aussi décoder la direction du vent par un "Select case"

Select Case Val(WindDirection)
Case 0
Me.TBVentDir.Text = "N"
Case 1
Me.TBVentDir.Text = "NNE"
Case 2
Me.TBVentDir.Text = "NE"

etc.

End Select

Il s'agit juste d'un test pour afficher les variables du fichier dans des textbox à chaque pression sur un bouton mais on peut bien sûr mettre les valeurs obtenues dans une structure. Ce qui me semblait correspondre à la demande c'est le décodage des données et en particulier de la date ;)

Je reste à disposition pour tout complément d'information.
Cordialement.
Michel
Dernière modification par MichelC le sam. janv. 06, 2007 8:01 pm, modifié 1 fois.
Avatar de l’utilisateur
jturlier
Membre
Messages : 3149
Inscription : mar. août 22, 2006 8:38 am
Localisation : 34410 Sérignan - Languedoc
Contact :

Message par jturlier »

Michel,
cela correspond, en mieux, à ce que j'avais déjà réussi à identifier. Le boulot est fait à 98%, le reste n'est que de l'habillage.
Merci encore.
Jean
Jean

Station : VP2 Pro Console Vue + anémomètre à Ultra-sons
Logiciels : Cumulus 1.9.4 + Cumulus2SQL
Serveur local : Apache + MySQL +PHP
PC : W10
Support Audio : FR

http://meteoserignan.ddns.net
Image
"Aide-toi d'abord toi-même et les autres t'aideront ... peut-être"
siegfried
Membre
Messages : 44
Inscription : lun. juil. 31, 2006 1:08 pm
Contact :

Message par siegfried »

Bonsoir,

J'utilise graphweather sur 2003 server sans aucun soucis, meme avec un fort uptime.

Le seul truc c'est que mon 2003 est une machine Vmware ....
Avatar de l’utilisateur
TiToine
Site Admin
Messages : 3356
Inscription : lun. mars 20, 2006 11:16 am
Localisation : Montréal
Contact :

Message par TiToine »

Est-ce que DirectX est emulé avec Vmware ? Tu dois t'en rendre compte car la génération des graphs prends 7 à 8 fois plus de temps quand c'est du rendu logiciel (environ 1seconde).
siegfried
Membre
Messages : 44
Inscription : lun. juil. 31, 2006 1:08 pm
Contact :

Message par siegfried »

Bonne question,
Ca prend environ 1 à 2sec pour générer.
Quend je regarde dans les propriétés de l'affichage dans directX, il y' ajuste direct Draw d'activé (enfin ca c'est 2003 serveur qui desactive toute les accélérations sons et videos).
Avatar de l’utilisateur
TiToine
Site Admin
Messages : 3356
Inscription : lun. mars 20, 2006 11:16 am
Localisation : Montréal
Contact :

Message par TiToine »

Ah ok, et il n'y a pas moyen de l'activer ? juste pour voir.
siegfried
Membre
Messages : 44
Inscription : lun. juil. 31, 2006 1:08 pm
Contact :

Message par siegfried »

Euh je ne préfère pas sur mon serveur sous VMware ^^
Répondre