/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
Enbrukerprogram
Fra : Egil Kristiansen


Dato : 29-08-02 18:40

Hei

Hvordan kan jeg forsikre meg om at et program kun kan kjøres av èn person av
gangen?

Jeg tenkte litt på å koble til en database som holdt styr på om det var noen
påloggede brukere, men hva skjer dersom programmet/maskinen krasjer uten at
programmet blir 'låst opp' igjen?

Har noen et godt forslag?

mvh
Egil Kristiansen



 
 
Helge Bjørkhaug (29-08-2002)
Kommentar
Fra : Helge Bjørkhaug


Dato : 29-08-02 19:21

* In message <B%sb9.15408$sR2.278590@news4.ulv.nextra.no> Egil Kristiansen
wrote:

>Hei
>
>Hvordan kan jeg forsikre meg om at et program kun kan kjøres av èn person av
>gangen?
>
>Jeg tenkte litt på å koble til en database som holdt styr på om det var noen
>påloggede brukere, men hva skjer dersom programmet/maskinen krasjer uten at
>programmet blir 'låst opp' igjen?
>
>Har noen et godt forslag?

Bruk winsock og udp protokollen. La programmet lytte på en port(udp)
etter en "string" som du definerer selv.
Under oppstart av programmet, send en "request" på porten og vent på svar i
ett definert tidsrom.
Programmet/pc som lytter (etter at det er startet opp) sender ett svar
tilbake (f.eks. 'ja, maskin xxxx - person yyyyyy kjører programmet').

--
Snutten
Reply-to adressen er gyldig inntil spam er mottatt

Egil Kristiansen (29-08-2002)
Kommentar
Fra : Egil Kristiansen


Dato : 29-08-02 19:43

Ahh, smart. Det tenkte jeg ikke på
Takk, jeg prøver den.

mvh
Egil Kristiansen
"Helge Bjørkhaug" <just@me.invalid> skrev i melding
news:c98e18ae90979ad1e6f5c1bf8e69100d@hbsoft.com...
> * In message <B%sb9.15408$sR2.278590@news4.ulv.nextra.no> Egil Kristiansen
> wrote:
>
> >Hei
> >
> >Hvordan kan jeg forsikre meg om at et program kun kan kjøres av èn person
av
> >gangen?
> >
> >Jeg tenkte litt på å koble til en database som holdt styr på om det var
noen
> >påloggede brukere, men hva skjer dersom programmet/maskinen krasjer uten
at
> >programmet blir 'låst opp' igjen?
> >
> >Har noen et godt forslag?
>
> Bruk winsock og udp protokollen. La programmet lytte på en port(udp)
> etter en "string" som du definerer selv.
> Under oppstart av programmet, send en "request" på porten og vent på svar
i
> ett definert tidsrom.
> Programmet/pc som lytter (etter at det er startet opp) sender ett svar
> tilbake (f.eks. 'ja, maskin xxxx - person yyyyyy kjører programmet').
>
> --
> Snutten
> Reply-to adressen er gyldig inntil spam er mottatt



Helge Bjørkhaug (29-08-2002)
Kommentar
Fra : Helge Bjørkhaug


Dato : 29-08-02 20:31

* In message <3Xtb9.11766$0p1.192580@news2.ulv.nextra.no> Egil Kristiansen
wrote:

>Ahh, smart. Det tenkte jeg ikke på
>Takk, jeg prøver den.

Og "stikkordet" er broadcast-address 255.255.255.255

--
Snutten
Reply-to adressen er gyldig inntil spam er mottatt

Tomas Christiansen (29-08-2002)
Kommentar
Fra : Tomas Christiansen


Dato : 29-08-02 21:37

Helge Bjørkhaug skrev:
> Og "stikkordet" er broadcast-address 255.255.255.255

....og den slags broadcast-trafik burde det i princippet være ret let
at blokere for, med de "personlige" firewalls, som man ser installeret
på ret mange PC'er efterhånden. Med andre ord: Det er en ikke særlig
sikker måde at sikre sig, at der ikke kører for mange instanser af ens
program.

-------
Tomas


Helge Bjørkhaug (29-08-2002)
Kommentar
Fra : Helge Bjørkhaug


Dato : 29-08-02 22:08

* In message <akm0ks$1sjp$1@news.cybercity.dk> Tomas Christiansen wrote:

>Helge Bjørkhaug skrev:
>> Og "stikkordet" er broadcast-address 255.255.255.255
>
>...og den slags broadcast-trafik burde det i princippet være ret let
>at blokere for, med de "personlige" firewalls, som man ser installeret
>på ret mange PC'er efterhånden. Med andre ord: Det er en ikke særlig
>sikker måde at sikre sig, at der ikke kører for mange instanser af ens
>program.

Jo, enig i det.
Men..... Hvis man ønsker å forhindre at programmet startes av flere
personer/pc'er, er det vel ikke trolig at det er en "personlig" computer.
Alternativt kan man finne IP adresse til nettkortet,
og sette "remotehost" til xxx.xxx.xxx.255.
Lokal broadcast (eget subnet) _skal_ en personlig firewall ikke blokkere,
en router derimot skal normalt blokke broadcast.

--
Snutten
Reply-to adressen er gyldig inntil spam er mottatt

Tomas Christiansen (29-08-2002)
Kommentar
Fra : Tomas Christiansen


Dato : 29-08-02 23:08

Helge Bjørkhaug skrev:
> Men..... Hvis man ønsker å forhindre at programmet startes av flere
> personer/pc'er, er det vel ikke trolig at det er en "personlig"
computer.

Jeg har kendskab til mindst ét stort firma, hvor der installeres
personlig firewall på alle arbejdscomputere (sikkerhed, sikkerhed,
sikkerhed).

-------
Tomas


CADmageren ApS (30-08-2002)
Kommentar
Fra : CADmageren ApS


Dato : 30-08-02 09:31

Hej Egil

Jeg synes at det lyder meget kompliceret med den dersens Winsock - Her har
du en anden løsning.

Med venlig hilsen

www.cadmageren.dk

Michael Christoffersen

-----------------


Option Explicit

Private Sub Form_Load()
If IsOneUser Then
MsgBox "This is the first user."
Else
MsgBox "Only one user allowed."
End If

End Sub


Function IsOneUser() As Boolean
On Local Error Resume Next
Dim Dummy As String
Dummy = Environ("temp") & "\dummy.txt"
Err.Clear
If Dir(Dummy) <> vbNullString Then Kill Dummy
If Err Then
IsOneUser = False
Else
IsOneUser = True
Open Dummy For Output As #1
' leave file open
End If
End Function






Tomas Christiansen (30-08-2002)
Kommentar
Fra : Tomas Christiansen


Dato : 30-08-02 22:03

CADmageren ApS skrev:
> Jeg synes at det lyder meget kompliceret med den dersens Winsock -
Her har
> du en anden løsning.
....
> Function IsOneUser() As Boolean
....
> End Function

Og hvordan vil du forklare, at din funktion kan sikre, at programmet
ikke eksekveres op på to forskellige computere (på samme
netværkssegment) på samme tid?

Det er nemlig det problem, som Helge løser med sit ret let
implementérbare (men desværre også let snydbare) forslag. Jeg vil dog
tilføje, at der findes produkter som er førendepå verdensmarkedet, som
netop benytter sig af UDP-broadcast løsningen, og ikke forsøger at
lægge yderligere begrænsninger på systemet.

-------
Tomas


Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408847
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste