Avatar billede puller Nybegynder
20. februar 2001 - 15:12 Der er 5 kommentarer og
1 løsning

Styring af brugerrettigheder

Hvordan styrer man brugerrettighederne i vba, jeg vil gerne have det sådan at hvis man ikke har det rigtigt bruger logon så må man kun kigge.
Avatar billede moses Praktikant
20. februar 2001 - 15:18 #1
VBA = Visual Basic for Applications
Hvilket program er det ??

I Word, PowerPoint og Excel er der kun almindelige \"Skrive/læse\" og \"Kun læse\" rettigheder vha. Passwords.

I Access er der desuden også logon med navn og password, hvorefter du kan specificere adgangskriterier og former for adgang til alle objekter hver for sig.
Dette gøres igennem systemfilen.
Avatar billede puller Nybegynder
20. februar 2001 - 15:20 #2
Det er et program jeg selv har lavet! Så det er noget vba kode jeg skal bruge!
Avatar billede moses Praktikant
20. februar 2001 - 15:41 #3
Så er det ikke VBA, men VB.

Programmet du bruger hedder vel Visual Basic ver. 5.0 eller lignende - ik\'?  ;-)

Du kan vælge at lave dit eget logon billede med password, hvorudfra du så begrænser brugeren eller du kan hente NT-Account user (Hvis ellers det er et NT-Domain).

Avatar billede joern Nybegynder
20. februar 2001 - 15:58 #4
Hej Puller.

Du må jo lave en tabel over brugere og deres respektive passwords.  Jeg benytter ascii-filer til den slags.  Kender du til at åbne, skrive til og læse fra alm. sekventielle filer?  Her er koden fra en loginfil til et af mine programmer, formen er der jo ikke, angiv evt. mail-adr. hvis interesseret, men formen til login er jo en del af hele projektet.

Her giver forskellige niveau\'er af rettigheder adgang til visse menu-punkter.

Skærmbillede fra programmet kan ses på http://www.jkfsoft.dk/jkfbookb.htm
----------------------------------------------------------------------------------------

Dim idind, passind As String
Dim a, b, x As Integer

Private Sub Form_Load()
frmlogin.Left = (Screen.Width - frmlogin.Width) \\ 2
  frmlogin.Top = (Screen.Height - frmlogin.Height) \\ 2
End Sub

Private Sub txtpass_KeyPress(KeyAscii As Integer)
  If KeyAscii <> 13 Then Exit Sub
    idind = txtid.Text
    passind = txtpass.Text
    b = 1
    Open netsti & \"id.007\" For Input As #7
      Do While EOF(7) = False
        For a = 0 To 11
          Line Input #7, id(a)
        Next
        \'MsgBox (\"id(5) = \" & id(5))
        If LCase(id(5)) = LCase(idind) Then
          Close #7
          GoTo fundet
        End If
        b = b + 1
      Loop
    Close #7
   
  labmedd.Caption = \"Bruger ID \" & idind & \" er ikke oprettet!\"
  Exit Sub
fundet:
  If id(6) <> passind Then
    labmedd.Caption = \"Bruger \" & idind & \" har ikke det angivne password!\"
    Exit Sub
  End If
  txtid.Text = \"\"
  txtpass.Text = \"\"
   
  \'Brugerrettighed 1 - redigere egne
  \'---------------------------------
  ugeskema.txtkunde.Text = id(5)
  ugeskema.labbruger.Caption = id(5)
  ugeskema.kngemresu.Enabled = True
  \'---------------------------------
 
  \'Brugerrettighed 2 - redigere alle
  \'---------------------------------
  If Val(id(8)) = 1 Then
    ugeskema.lstkunde.Enabled = True
    ugeskema.knsogkun.Enabled = True
    ugeskema.knmulti.Enabled = True
  End If
  \'----------------------------------
 
  \'Brugerrettighed 3 - redigere resurser og rekvirenter
  \'----------------------------------------------------
  If Val(id(9)) = 1 Then
    ugeskema.knredresu.Enabled = True
    ugeskema.knredkun.Enabled = True
    ugeskema.mnuresu(2).Enabled = True
    ugeskema.mnukun(3).Enabled = True
  End If
  \'----------------------------------------------------
 
  \'Brugerrettighed 4 - redigere brugere og passwords
  \'----------------------------------------------------
  If Val(id(10)) = 1 Then
    ugeskema.mnubruger(10).Enabled = True
  End If
  \'----------------------------------------------------
 
  \'Brugerrettighed 5 - Stier, backup og restore
  \'----------------------------------------------------
  If Val(id(11)) = 1 Then
    ugeskema.mnuslet(4).Enabled = True
    ugeskema.mnustier(5).Enabled = True
    ugeskema.mnubak(6).Enabled = True
  End If
  \'----------------------------------------------------
 
  \'Angivelse af rettigheder i rammen \"ramrett\"
  ugeskema.ramrett.Caption = \"Bruger \'\" & id(5) & \"\' har de grønne rettigheder\"
  For a = 0 To 4
    If id(a + 7) = 1 Then ugeskema.labrett(a).BackColor = RGB(0, 255, 0) Else ugeskema.labrett(a).BackColor = RGB(255, 0, 0)
  Next
   
  frmlogin.Visible = False
  ugeskema.WindowState = 0
End Sub
Avatar billede puller Nybegynder
21. februar 2001 - 11:52 #5
Har løst det selv
Avatar billede moses Praktikant
21. februar 2001 - 13:06 #6
Tak for indsatsen joern  =(
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester