Godmiddag ! Hej Johan Sedan en annan sak...Jag fann artiklar om osk.exe. Får för mig att det endast stödjer operativsystem Win 2K ej Win9x.... Varför inte göra ett fönster med det numeriska knapparna. Så kan användaren skriva in sin numeriska kod? Jag kör Win 2k. Tog för givet att den var med i Win 95 oxå. Hej igen tack för svaren. Finns en problematik med hela situationen. Förutsättningarna kan vara dessa. Betraktaren kan vilja att jag skriver ut dokumentet. Betraktaren kan alltså inte själv skriva ut, utan ett lösenord eller dylikt. charmap är inte samma sak som osk. osk är ett virtuellt tangentbord med skift, ctrl, funktionstangenter osv. Jag tänkte på en annan sak...... Eftersom endast musen är det enda arbetsverktyget i den här situationen, med att dölja hur en utskrift ska göras för betraktaren. Johan... En ofullständig, men fungerande lösning. Prova det här. Tack för svaren, ska testa båda varianterna. Heinz version av kodning Hej Heinz och johan. Du kan ha en 'tomä label som du klickar på för att tömma 'inmatadeOrdet' om du skulle trycka fel på vägen. Glöm inte heller att tömma inmatadeOrdet när du visar utskrifts formuläret, annars måste du starta om programmet för att skriva ut igen. Heinz svarar en variant kanske: Tack PBLösenord
Är det ngn som har en bra id'e på hur man kan skapa ett lösenord med följande förutsättningar...
Endast dataskärm och mus (ej tangentbord) är tillgängligt för betraktaren av ett program som jag gjort.
Det finns möjlighet att kunna skriva ut dokument från detta program, men endast jag (ej betraktaren) ska kunna via ngn form av lösenord (utan tangentbord) göra detta innan en utskrift ska kunna göras.Sv: Lösenord
Osk.exe var hittar Du detta program. Inbyggt i datorn eller ...
Finns på nätet.. eller..Sv: Lösenord
Sv: Lösenord
Sv: Lösenord
Men som sagt, gör ett litet formulär med lagom många knappar.
/johan/Sv: Lösenord
Ponera följande. Betraktaren kalla då på mig och vill få dokumentet utskrivet via skrivaren.
Han/hon får då inte se vilket lösenord eller dyl. som jag skriver in, ......men vänta nu, menar exempelvis Andreas att via en kopia av ett numeriskt tangentbord (läs Formulär) att lösenordet blir fingerat ...????Sv: Lösenord
charmap är ett verktyg för att se vilka tecken som finns i en font, alternativt se vilket tecken en viss ansi-kod representeras av i respektive font.
(Jag vet att man kan skriva in flera tecken i charmap, men det man skriver inte måste man ju lägga i 'clipboard' och sedan föra över det dit man vill ha det. Då kan nästa person klistra in lösenordet i något synligt fält och få det i klartext.)
Gör ett formulär där man måste trycka på några knappar i rätt ordning.
/johan/Sv: Lösenord
Kan man på ngt vis koda i VB via mouse down, mouse up
Exempelvis att genom 3 vänsterklickar och slutligen 2 högerklickar med musen får skrivaren aktiverad.
?????Sv: Lösenord
Trots allt....kollade på ev. kodning men fick inte till det med att antal left och right klickningar med musen. Har Du ngt tips på kodning så att Vb "förstår att det handlar om left resp right klickningar.???Sv: Lösenord
Klistra in denna kod i ett tomt formulär.
Starta.
Klicka i formuläret.
Det man behöver lägga till är något sätt att tömma 'inmatadeOrdet' så man kan börja om från början.
/johan/
Option Explicit
'vänster *2 + höger *3
Private Const hemligaOrdet = "11222"
Private inmatadeOrdet As String
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
inmatadeOrdet = inmatadeOrdet & CStr(Button)
Debug.Print Button
If inmatadeOrdet = hemligaOrdet Then MsgBox "Bravo"
End SubSv: Lösenord
<code>
Option Explicit
Const HemligaOrdet = "11222"
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = vbLeftButton Then
Label1.Caption = Label1.Caption & "1"
End If
If Button = vbRightButton Then
Label1.Caption = Label1.Caption & "2"
End If
If Len(Label1.Caption) = 5 Then
If Label1.Caption = HemligaOrdet Then
MsgBox "Bravo"
Label1.Caption = Empty
Else
Label1.Caption = Empty
End If
End If
End Sub
</code>Sv: Lösenord
Det var inte helt lätt, kan man se....
mvh
KennethSv: Lösenord
Din version funkade inte. Förutsätter att man tydligen klickar på en label1 på Formuläret, men inte heller det funkade ?? Har jag fel. ??
Johan version av kodning
Din kod funkade, men gör Du ett fel kan Du inte upprepa koden, vilket kanhända är det korrekta och därmed får man hämta upp Formuläret igen från Listbox.
jag skickar med koden som ska läggas till ngn av ovanstående kodningar och därmed aktiverar skrivaren. Testade Din version Johan med följande tillägg, men fungerade dåligt. Tips...??
Ursprunglig kod på att göra utskriften, där jag då hade lagt utskriften på en osynlig label i Formuläret som bara jag visste var den fanns.
Den funkar helt perfekt som läget är nu, men ska som sagt bindas samman med ngn av ovanstående kodningar, kanske Johans.
Private Sub Label21_Click()
MsgBox "Skrivaren aktiv ??"
CommonDialog1.CancelError = True
Err.Clear
On Error Resume Next
CommonDialog1.ShowPrinter
If Err.Number = 32755 Then
MsgBox "Avbröt utskriften"
Else
PrintForm
End If
On Error GoTo 0
End SubSv: Lösenord
Har löst det.
Använde Johans kodning för tillfället kopplat till ett mindre formulär för utskriftsmöjligheten.
Form1 Johans kodning
Option Explicit
'vänster *2 + höger *3
Private Const hemligaOrdet = "11222"
Private inmatadeOrdet As String
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
inmatadeOrdet = inmatadeOrdet & CStr(Button)
Debug.Print Button
If inmatadeOrdet = hemligaOrdet Then
Form2.Show
End If
End Sub
Form 2
Option Explicit
Private Sub Command1_Click()
CommonDialog1.CancelError = True
Err.Clear
On Error Resume Next
CommonDialog1.ShowPrinter
If Err.Number = 32755 Then
MsgBox "Avbröt utskriften"
Else
PrintForm
End If
On Error GoTo 0
End Sub
Funkar klockrent.
Tackar så mkt för en så "enkel lösning"Sv: Lösenord
/johan/Sv: Lösenord
Du måste vänster eller höger klicka
någonstans på formen för att det skall fungera
Om du inte vill att Label1 skall synas kan du
sätta Label1.Visible = False
Label1.Caption måste vara tom när programmet startarSv: Lösenord
<code>
Option Explicit
Dim gArr As String
Const PW = "LRRLLL"
Private Sub Form_Load()
gArr = String(Len(PW), " ")
End Sub
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
gArr = LeftShift(gArr)
Select Case Button
Case vbLeftButton
Mid(gArr, Len(gArr), 1) = "L"
Case vbRightButton
Mid(gArr, Len(gArr), 1) = "R"
End Select
If gArr = PW Then
MsgBox "OK"
End If
End Sub
Private Function LeftShift(ByVal Arr As String) As String
Dim i As Integer, c As String
For i = 1 To Len(Arr) - 1
c = Mid(Arr, i + 1, 1)
Mid(Arr, i, 1) = c
Next i
LeftShift = Arr
End Function
</code>Sv: Lösenord
Det här löste allt. Funkar peeerfekt.
Övriga också.
Nu har jag ett bra "lösenord" som kan uppdateras efter smak.