Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Promena sistemskog vremena uz pomoć VB-a 2005...

[es] :: .NET :: Promena sistemskog vremena uz pomoć VB-a 2005...

[ Pregleda: 3269 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

electroNik
Nikola Milenković
Srbija

Član broj: 46941
Poruke: 78
*.dialup.neobee.net.



Profil

icon Promena sistemskog vremena uz pomoć VB-a 2005...28.08.2006. u 20:35 - pre 214 meseci
Kako?
Gone Shootin'
 
Odgovor na temu

StrokaviKod
Serbia

Član broj: 104474
Poruke: 32
*.static.sbb.co.yu.



Profil

icon Re: Promena sistemskog vremena uz pomoć VB-a 2005...29.08.2006. u 10:14 - pre 214 meseci
API !!

Imports System.Runtime.InteropServices

<StructLayoutAttribute(LayoutKind.Sequential)>
Private Structure SYSTEMTIME
Public year As Short
Public month As Short
Public dayOfWeek As Short
Public day As Short
Public hour As Short
Public minute As Short
Public second As Short
Public milliseconds As Short
End Structure


<DllImport("coredll.dll")>
Private Shared Function SetLocalTime(ByRef time As SYSTEMTIME) As Boolean
End Function
 
Odgovor na temu

electroNik
Nikola Milenković
Srbija

Član broj: 46941
Poruke: 78
*.dialup.neobee.net.



Profil

icon Re: Promena sistemskog vremena uz pomoć VB-a 2005...29.08.2006. u 11:37 - pre 214 meseci
Kol'ko sam ja shvatio, treba da napravim referencu ka coredll.dll biblioteci, i iz nje iskoristim metodu za promenu datuma. Jel da?
Nije mi jasno kako to da nisam uspeo da nađem tu biblioteku na hardu. Da nije to zato što imamo različite verzije windowsa (ja imam XPSP2)?
Objasni mi malo opširnije jer nikad do sada nisam radio sa WinAPI-jem.
Gone Shootin'
 
Odgovor na temu

electroNik
Nikola Milenković
Srbija

Član broj: 46941
Poruke: 78
*.dialup.neobee.net.



Profil

icon Re: Promena sistemskog vremena uz pomoć VB-a 2005...30.08.2006. u 09:23 - pre 214 meseci
Rešio sam problem. Ukoliko nekoga zanima... Evo kako:
Code:
Imports System.Runtime.InteropServices
Public Class ImeKlase

    <StructLayoutAttribute(LayoutKind.Sequential)> _
    Private Structure SYSTEMTIME
        Public year As Short
        Public month As Short
        Public dayOfWeek As Short
        Public day As Short
        Public hour As Short
        Public minute As Short
        Public second As Short
        Public millisecond As Short
    End Structure

    Private Declare Function SetSystemTime Lib "kernel32.dll" (ByRef stru As SYSTEMTIME) As Int32

    Private Shared Sub PromeniLokalnoVreme()
        Dim objNovoVreme As SYSTEMTIME
           '
    '
    'kod koji postavlja parametre strukture: objNovoVreme
    '    
    '
        SetSystemTime(objNovoVreme)
    End Sub
End Class
Vodite racuna o tome da vreme šaljete f-ji SetSystemTime bude u UTC formatu jer ce Windows da pomeri sate unapred ili unazad u zavisnosti od toga u kojoj se vremenskoj zoni nalazite.
Gone Shootin'
 
Odgovor na temu

StrokaviKod
Serbia

Član broj: 104474
Poruke: 32
*.static.sbb.co.yu.



Profil

icon Re: Promena sistemskog vremena uz pomoć VB-a 2005...30.08.2006. u 09:49 - pre 214 meseci
Ne, ne treba ti referenca na "coredll" vec samo ovo sto sam ti napisao

Pametno bi bilo da napravis klasu.

Npr.
Code:

Imports System.Runtime.InteropServices
Public Class SystemTime

    <StructLayoutAttribute(LayoutKind.Sequential)> _
        Private Structure SYSTEMTIME
        Public year As Short
        Public month As Short
        Public dayOfWeek As Short
        Public day As Short
        Public hour As Short
        Public minute As Short
        Public second As Short
        Public milliseconds As Short
    End Structure


    <DllImport("coredll.dll")> _
    Private Shared Function SetLocalTime(ByRef time As SYSTEMTIME) As Boolean
    End Function

    Public Sub SetSysTime(ByRef NewDate As DateTime)
        Dim st As SystemTime
        st.year = Convert.ToInt16(NewDate.Year)
        st.month = Convert.ToInt16(NewDate.Month)
        st.dayOfWeek = Convert.ToInt16(NewDate.DayOfWeek)
        st.day = Convert.ToInt16(NewDate.Day)
        st.hour = Convert.ToInt16(NewDate.Hour)
        st.minute = Convert.ToInt16(NewDate.Minute)
        st.second = Convert.ToInt16(NewDate.Second)
        st.milliseconds = Convert.ToInt16(NewDate.Millisecond)

        SetLocalTime(st)

    End Sub

End Class



I to bi bilo to

Edit: Kasno marko na kosovo stize :)

[Ovu poruku je menjao StrokaviKod dana 30.08.2006. u 11:07 GMT+1]
 
Odgovor na temu

StrokaviKod
Serbia

Član broj: 104474
Poruke: 32
*.static.sbb.co.yu.



Profil

icon Re: Promena sistemskog vremena uz pomoć VB-a 2005...30.08.2006. u 10:11 - pre 214 meseci
evo ti koristan link za pregled API funkcija, tipova i konstanti

http://www.activevb.de/rubriken/apiviewer/index-apiviewereng.html
 
Odgovor na temu

electroNik
Nikola Milenković
Srbija

Član broj: 46941
Poruke: 78
*.dialup.neobee.net.



Profil

icon Re: Promena sistemskog vremena uz pomoć VB-a 2005...30.08.2006. u 11:01 - pre 214 meseci
Probaću taj tvoj način.
Hvala na odgovorima i linkovima.
Gone Shootin'
 
Odgovor na temu

StrokaviKod
Serbia

Član broj: 104474
Poruke: 32
*.static.sbb.co.yu.



Profil

icon Re: Promena sistemskog vremena uz pomoć VB-a 2005...30.08.2006. u 11:12 - pre 214 meseci
Moja greska, nije "coredll.dll" nego "kernel32.dll" kao sto si i sam primetio. Sorry!!!
 
Odgovor na temu

ganjaman
admin
Ni

Član broj: 111814
Poruke: 113
212.62.59.*

Sajt: asp.net


+5 Profil

icon Re: Promena sistemskog vremena uz pomoć VB-a 2005...22.11.2006. u 07:10 - pre 211 meseci
Ovaj problem sam resavao s vb6 verzijom i nisam uspeo samo datum da promenim dok mi neko lepo nije napisao nesto ovako:

Date xx/xx/xx sve to u dokument .cmd i nema nikakvih problema

mozda nekog zanima ja sam bas imao problem
To sto nekoliko miliona ljudi tvrdi da nisi u pravu ne znaci da stvarno nisi - Frank Zappa
 
Odgovor na temu

[es] :: .NET :: Promena sistemskog vremena uz pomoć VB-a 2005...

[ Pregleda: 3269 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.