Units | | | | Andre Rohland | Hello dear Community,
i'm already one quite old Profan - Dino ( since Version 5.5 ). The development of Profan have I To to actually Version always attentive and keen chasing, though always only Background, because I time with Thomas Hölzer gefetzt and me for not really Komplimente the then Profanergruppe eingefangen have... .
Currently bastle I one Program, which requires, that The System-Time possible very updated, or. abgerufen becomes.
For this have I already several Lösungsansätze seen, though came tappt im dunkeln me to that part as: 1. To tricky and 2. To big to, particularly if one only The actually Time beötigt.
God Thanks there still Server, The The actually Time and the date over the so-called Daytime-Protocol as String give back. The disadvantage is only, that this log not eindeutig definiert is, so that different Server too different Strings give back... .
Perhaps can someone of you these Unit use, i'd me above forward. View source there naturally on inquire... .
greetings André Rohland |
| | | | |
| | | | | | | |
| | Andre Rohland | have whom View source another little comments.
Inettime
$L
Def WSAStart(2) !wsock32.dll,WSAStartup
Def socket(3) !wsock32.dll,socket
Def WSAAsyncSelect(4) !wsock32.dll,WSAAsyncSelect
Def htons(1) !wsock32.dll,htons
Def connect(3) !wsock32.dll,connect
Def gethostbyname(1) !wsock32.dll,gethostbyname
Def recv(4) !wsock32.dll,recv
Def ioctlsocket(3) !wsock32.dll,ioctlsocket
Def closesocket(1) !wsock32.dll,closesocket
Def WSAClean(0) !wsock32.DLL,WSACleanup
Def WSAGetLastError(0) !wsock32.dll,WSAGetLastError
Def RtlMoveMemory(3) !kernel32,RtlMoveMemory
Def InternetGetConnectedState(2) !WININET.DLL,InternetGetConnectedState
Def SetSystemTime(1) !KERNEL32,SetSystemTime
Def SetLocalTime(1) !KERNEL32,SetLocalTime
USERMESSAGES 4100 Message, The appears, if one Netzwerkereignis stattfindet (WSAAsyncSelect)
proc ?_getTime
parameters netadr$,netport&,count&,pointer&,erlaubt&
Winsock - variables
declare wsaerror&,Inetadresse#,sockaddr_in#,zwbuf#,avdat&
declare dummy&,hostent#,xnetport&,xnetorderadr&,wsadata#,mysocket&
dim Inetadresse#,255
dim wsadata#,526
dim sockaddr_in#,16
dim hostent#,$5000
control and Control
declare end%,Result$,tstring$
System-Time etc
declare wYear%,wMonth%,wDay%,wHour%,wMinute%,wSecond%
Result$ =
Bich I (already) drin ???
ifnot InternetGetConnectedState(0,0)
Result$ = error 1
return Result$
endif
Winsock.dll initialisieren
clear wsadata#
if WSAStart($101,wsadata#)
Result$ = error 2
return Result$
endif
Streamsocket produce
P1: (AF_INET = 2) internet log Version 4 (IPv4) Adressfamilie/// P2: (SOCK_STREAM = 1)
it should one Streamsocket created go/// P3: 0 - Provider certainly the log
mysocket&=socket(2,1,0)
if mysocket& = -1
Result$ = error 3
WSAClean()
return Result$
endif
Nonblocking mode / User Message übergeben
if WSAAsyncSelect(mysocket&,%hwnd,4100,$1) <> 0
Result$ = error 4
closesocket(mysocket&)
WSAClean()
return Result$
endif
clear Inetadresse#
string Inetadresse#,0=netadr$
dummy&=gethostbyname(Inetadresse#) supply Pointer on Hostent - structure
if dummy& = 0 Internetadresse could not found/ aufgelöst go
Result$ = error 5
closesocket(mysocket&)
WSAClean()
return Result$
endif
clear hostent#
copy the Info from the hostent - structure ( dummy& ) in The Own Memory-Variable hostent#
RtlMoveMemory(hostent#,dummy&,16)
dummy&=long(hostent#,12)
RtlMoveMemory(hostent#,dummy&,4)
dummy&=long(hostent#,0)
RtlMoveMemory(hostent#,dummy&,255)
xnetorderadr&=long(hostent#,0)
xnetport&=htons(netport&)
structure for winsock connect (log, Port, address ) fill
word sockaddr_in#,0=2 AF_inet
word sockaddr_in#,2=xnetport&
long sockaddr_in#,4=xnetorderadr&
Streamsocket contact...
wsaerror& = connect(mysocket&,sockaddr_in#,16)
if wsaerror& = -1
wsaerror& = WSAGetLastError()
ifnot (wsaerror& = 10035) | (wsaerror& = 0) 0 = no Error, 10035 = WSAWOULDBLOCK, these
Result$ = error 6 Message results because of the NonBlocking - mode,
closesocket(mysocket&) is but for us unbeachtlich
WSAClean()
return Result$
endif
endif
The follow up Loop could abgeändert go, because in example SLEEP count& (= Parameter P3)
uses and The amount the Durchläufe herabgesetzt becomes
likewise could too The USERMESSAGE 4100 quizzed go, for whom of me intended object
genügte these Variante ( i.d.R. lying one Result to about 50 Durchläufen to ).
if Result$ =
avdat&=0
Whileloop count&
ioctlsocket(mysocket&,$4004667F,addr(avdat&)) $4004667F = FIONREAD - checks whether data receive
if avdat& > 0 get and gives The amount in avdat& back
dim zwbuf#,avdat&
clear zwbuf#
recv(mysocket&,zwbuf#,avdat&,0) reads The amount the conceived data (avdat&)
break in zwbuf# one
endif
endwhile
if avdat& > 0
Result$ = string $(zwbuf#,0)
Result$=translate $(Result$,chr $(13)+chr $(10),) Carriage return / Line Feed Remove
ifnot pointer&=0 Parameter 4 the Unit, pointer& is The address
wYear% = val(right$(Result$,4)) of/ one übergebenen SystemTime - structure
RtlMoveMemory(pointer&,addr(wYear%),2) structure becomes filled....
case instr(JAN,Upper $(Result$)) : wMonth% = 1
case instr(FEB,Upper $(Result$)) : wMonth% = 2
case instr(MAR,Upper $(Result$)) : wMonth% = 3
case instr(APR,Upper $(Result$)) : wMonth% = 4
case instr(MAY,Upper $(Result$)) : wMonth% = 5
case instr(JUN,Upper $(Result$)) : wMonth% = 6
case instr(JUL,Upper $(Result$)) : wMonth% = 7
case instr(AUG,Upper $(Result$)) : wMonth% = 8
case instr(SEP,Upper $(Result$)) : wMonth% = 9
case instr(OCT,Upper $(Result$)) : wMonth% = 10
case instr(NOV,Upper $(Result$)) : wMonth% = 11
case instr(DEC,Upper $(Result$)) : wMonth% = 12
RtlMoveMemory(pointer&+2,addr(wmonth%),2)
wDay% = val(substr$(Result$,3,chr $(32)))
RtlMoveMemory(pointer&+6,addr(wDay%),2)
tstring$ = substr$(Result$,4,chr $(32))
wHour% = val(substr$(tstring$,1,:))
RtlMoveMemory(pointer&+8,addr(wHour%),2)
wMinute% = val(substr$(tstring$,2,:))
RtlMoveMemory(pointer&+10,addr(wMinute%),2)
wSecond% = val(substr$(tstring$,3,:))
RtlMoveMemory(pointer&+12,addr(wSecond%),2)
else
erlaubt& = 0 No structure übergeben, means no permit to that
endif settle the System-Time = ignoriere Parameter 5
else
Result$ = error 7 it get no data receive
endif
closesocket(mysocket&)
WSAClean()
endif
if erlaubt& Parameter 5 the Unit: settle the System-Time allows
SetSystemTime(pointer&)
dummy& = SetLocalTime(pointer&)
casenot dummy& : Result$ = error 8 Error at settle the system ( local ) Time
endif
return Result$
endproc
|
| | | | |
| | Andre Rohland | Nanüchen...
Unit watts 10 time Downloaded, kommentierter View source watts To Disposal set.
really no spotting, Notes o.ä. ? |
| | | | |
| | RGH | Hello Andre,
gib whom people still ewas Time, itself so To befassen. I load often what down, circa then first very plenty later - sometimes are it months - moreover To come, me so To befassen. and manches becomes loaded, comes but for want of opportunity never to that employment. are hold not everything schoolboy, students or pensioner with plenty Time here ...
Greeting Roland (the befürchtet, too dereinst as pensioner not so plenty Time to have, How it gladly had and as student not the nötige money having, around the Time so To benefit, How it it then gladly done had) |
| | | Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD - ATI Radeon HD 4770 512 MB - Windows 7 Home Premium 32Bit - XProfan X4 | 02/04/09 ▲ |
| |
| | | I lean whom thoughts ex, that Roland ever pensioner is.
@Andre: with the Time go the sure dozens Downloads. nevertheless, we need a further battle plan, plenty plenty More XProfan To win. |
| | | | |
| | | | | | | |
| | Andre Rohland | O.k., O.k. have I understands...
I wanted to really not rumningeln and drängeln, I had me only a little bit gewundert. IF having still on my first mail ( View source Gibts on inquire ) speedy with inquire! answered what about me having now somehow a little bit Bammel, that Perhaps something not working.
@Roland: cool, you again personally To reading. Please but not of middle-aged Profan - Dino from the first mail mislead let, i'm ( with plenty Happiness ) Perhaps in 23 years Member your third category (pensioner) . by then work I yet as coach on Grundschulen with Kindern. Currently are here in Berlin-Brandenburg school holidays, what Perhaps my instantly übermäßigen Zeitfonds declared... .
@IF: it went me really less the number the Downloads, as rather therefore, that the Unit too correctly. funkioniert and useable is. Concerning battle plan : is one quite komplexes Topic, on the I thoroughly interested be. suggest, we load this Posting lest, separate make either a new Posting on, or talk us directly by Email. we could so to that example imaginations replace, together above laugh and in the Result Perhaps still a good strategy find... . |
| | | | |
| | Andre Rohland | still another importent Info...
In my Program, in welchem I The Unit use, go any three Zeitserver the Uni Braunschweig quizzed. in the Falles one Mißerfolgs becomes The request any three minutes anew implemented.
After Compile and left to ausführbaren *.exe File could too to 20 minutes yet no link to the Zeitservern manufactured go, though in the Interpreter everything tadellos klappte.
The cause: I use utterly Care of GDATA (Antivirus + Firewall). After the left with the Runtime-Module blockte The Firewall The link, what tappt im dunkeln me gemeinerweise naturally not indicating... .
Solltet your means such Problems having screen Please first Your Settings for your Antivirusprogramm, or. The Firewall(s).
In my entrapment genügte one plainer Scan with the Antivirus-Komponente of GDATA utterly Care, circa my fertiges Program as vertrauenswürdig einzustufen, thereafter klappte again everything at first attempt.
mfG André |
| | | | |
| | E.T. | Moin, Have this time ausgegraben, because I to very such a thing Search. bring but the example somehow not to that walk
or someone 'ne others idea, The System-Time by internet To to put ??
background: my computer for my Wetterstation has to one Neustart (or. kurzzeitigem blackout) always unsinnige Time-Settings. well the battery pack there, can itself on 'nem Mini-PC (Orbsmart) neither so simply change). with Win-own Mitteln komm I do not reliably moreover, The System-Time sure to the computer-Start To to put: time works, öffters but neither.
there The software for my Wetterstation (and Auswertung etc.) eh to the Start of WIN 8.1 of a XProfan-Program the row to launched becomes, was so the thought, still to the started the relevanten programs same The Time before with irgendeinem Server To syncronisieren. |
| | | Grüße aus Sachsen... Mario WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte... | 06/15/20 ▲ |
| |
| | Matthias Arlt | the above-mentioned example wants by me neither so right... another Possibility bestünde over The Kommandozeile How follows:
net time /setsntp:ptbtime2.ptb.de w32tm /resync
The Zeitserver is naturally variable (not any functions always). the can itself then on different point automatisieren. |
| | | WinXP SP2, Win7 - XProfan 10/11/FreeProfan32 - Xpia | 06/15/20 ▲ |
| |
| | E.T. | Matthias Arlt (15.06.2020)
net time /setsntp:ptbtime2.ptb.de w32tm /resync
functions neither, as should. somehow launch my 8.1 whom "Zeitdienst" first etliche Time to the Start / Neustart, the can itself under services neither Change (withal "Start sofort" still a eternity later). therefore working these Variante neither sure, and success or failure can neither controlled go. |
| | | XProfan X3Grüße aus Sachsen... Mario WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte... | 06/15/20 ▲ |
| |
|
AnswerTopic-Options | 16.474 Views |
Themeninformationenthis Topic has 6 subscriber: |