On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение
администратор




Пост N: 2308
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 18.02.12 16:25. Заголовок: Пароль под звездами в GET


Хотел спрятать пароль под звезды. Помогли люди добрые и прислали исходничек.
Все бы хорошо , вот только пока не доедешь до строки с паролем , GET с паролем остается
не под звездами.
Что нужно поправить ?


 
#include "inkey.ch"
#include "getexit.ch"

Local smtp:=padr("smtp.test",25)
local port:=25
local pop3:=padr("pop3.test",25)
local elogin:=padr("login",15)
local epass:=padr("123",20)
local email:=padr("tuktuk@mail.ru",25)
local getlist:={}

cls

@ 10,22 say "Сервер исходящей почты " get smtp
@ 11,22 say "Порт исходящей почты " get port picture "@Z 999"
@ 12,22 say "Сервер входящей почты " get pop3
@ 13,22 say "Имя пользователя " get elogin
@ 14,22 say "Пароль пользователя " get epass SEND reader := {|oget| mypsw(oGet)}
@ 15,22 say "Email " get email
read
***************************
? epass
wait

static procedure Mypsw( oget )

local nTasto
local curs := SetCursor(1)

static aStdKeys := {K_ENTER, K_ESC, K_UP, K_DOWN, K_TAB, K_SH_TAB, K_LEFT,;
K_RIGHT, K_HOME, K_END, K_INS}

if ( GetPreValidate( oGet ) )
oGet:SetFocus()
oGet:cargo := oGet:VarGet()
if ! Empty(oGet:cargo)
oGet:buffer := Padr(repl( '*', len( RTrim(oGet:cargo) ) ),;
len(oGet:cargo) )
oGet:changed := .t.
oGet:pos := len( RTrim(oGet:cargo) ) + 1
oGet:display()
endif
do while ( oGet:exitState == GE_NOEXIT )
if ( oGet:typeOut )
oGet:exitState := GE_ENTER
endif
do while ( oGet:exitState == GE_NOEXIT )
nTasto := inkey(0)
IF nTasto >= 32 .and. nTasto <= 255
if Set(_SET_INSERT)
oGet:cargo := left(oGet:cargo, oGet:pos-1) + chr( nTasto ) +;
Substr(oGet:cargo, oGet:pos, len(oGet:cargo) - oGet:pos)
else
oGet:cargo := left(oGet:cargo, oGet:pos-1) + chr( nTasto ) +;
Substr(oGet:cargo, oGet:pos+1, len(oGet:cargo) - oGet:pos)
endif
GetApplyKey( oGet, asc( "*" ) )
elseif nTasto == K_DEL
oGet:cargo := left( oGet:cargo, oGet:pos-1) +;
Substr(oGet:cargo, oGet:pos+1, len( oGet:cargo ) - oGet:pos ) + ' '
GetApplyKey( oGet, nTasto )
elseif nTasto == K_BS .and. oGet:pos > 1
oGet:cargo := left( oGet:cargo, oGet:pos-2) +;
Substr(oGet:cargo, oGet:pos, len( oGet:cargo ) - oGet:pos + 1 ) + ' '
GetApplyKey( oGet, nTasto )
elseif ASCAN(aStdKeys, nTasto) # 0
GetApplyKey( oGet, nTasto )
endif
enddo
if ( !GetPostValidate( oGet ) )
oGet:exitState := GE_NOEXIT
endif
enddo
oGet:KillFocus()
endif
if oGet:exitState != GE_ESCAPE .and. oGet:cargo # oGet:original
oGet:varPut( Padr(oGet:cargo, len(oGet:varGet())) )
endif
SetCursor( curs )

return





Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 3 [только новые]


Администратор




Пост N: 2264
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 18.02.12 17:58. Заголовок: Dima пишет: @ 14,22..


Dima пишет:

 цитата:
@ 14,22 say "Пароль пользователя " get epass SEND reader := {|oget| mypsw(oGet)}



После этой строки надо добавить:
ATail(GetList):display()

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 2309
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 18.02.12 18:28. Заголовок: Pasha пишет: После ..


Pasha пишет:

 цитата:
После этой строки надо добавить:
ATail(GetList):display()


Неа не помогло.

Сделал пока вот так.
 
@ 10,22 say "Сервер исходящей почты " get smtp when aster(Getlist[5])
@ 11,22 say "Порт исходящей почты " get port picture "@Z 999"
@ 12,22 say "Сервер входящей почты " get pop3
@ 13,22 say "Имя пользователя " get elogin
@ 14,22 say "Пароль пользователя " get epass SEND reader := {|oget| mypsw(oGet)}
@ 15,22 say "Email " get email

Func aster(og)
@ og:row(),og:col() say repl("*",len(alltrim(og:varget()))) color "n/w"
return .t.




Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 3
Зарегистрирован: 26.04.11
ссылка на сообщение  Отправлено: 13.06.12 13:55. Заголовок: А зачем считывать па..


А зачем считывать пароль перед вводом? Его нужно вводить. У меня он пустой сначала, и проблем нет.

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 9
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет