Jump to content
TNC-TR
PColik

Programa Şifreli Girişte Hata

Recommended Posts

Arkadaşlar şu kodu bir kontrol edebilir misiniz?

Spoiler
getpass = INIFile.GetValue("files\\pw.vst", "startup", "pass");

	enteredpass = "";
	while (enteredpass == "") and (enteredpass ~= "CANCEL") do

	enteredpass = Dialog.PasswordInput("Şifre", "Lütfen şifrenizi girin:", MB_ICONQUESTION);
		if enteredpass == "" then
		Dialog.Message("Hata!", "Şifre girmediniz.", MB_OK, MB_ICONEXCLAMATION);
		elseif enteredpass == "CANCEL" then
		Application.Exit();
		elseif enteredpass ~= getpass then
		Dialog.Message("Hata!", "Yanlış şifre girdiniz, lütfen tekrar deneyin.", MB_OK, MB_ICONEXCLAMATION);
		else
			if (Application.GetLastError() ~= 0) then
			Dialog.Message("Hata!", "Bir hata meydana geldi! Lütfen programı yönetici olarak çalıştırıp tekrar deneyin.", MB_OK, MB_ICONSTOP);
			end
		end
	end

 

Arkadaşlar bunu Actions'da On Startup kısmına yazdım. Şimdi program açılışta şifre soruyor;

İptal butonuna tıklayınca programdan çıkıyor, bu tamam,

Hiç şifre yazmadan Tamam butonuna basınca Şifre girmediniz diye hata veriyor ve tekrar şifre soruyor, bu da tamam

Fakat yanlış şifre girildiği zaman önce Yanlış şifre girdiniz diye hata veriyor, fakat sonra program açılıyor. Ben hata verdikten sonra programın açılmasını değil, döngü ile tekrar Dialog.PasswordInput penceresinin gözükmesini istiyorum. Nerde hata yaptığımı bilmiyorum. Bir yardımcı olur musunuz arkadaşlar? :)

Share this post


Link to post
Share on other sites

Artık AMS kullanmıyor çoğusu o yüzden bendede yüklü değil malesef. Ancak Anydesk kurup bilgilerini atarsan bağlanıp bir kurcalarm

  • Like 1

Share this post


Link to post
Share on other sites

Şu şekilde test ettim çalıştı... 

getpass = INIFile.GetValue("files\\pw.vst", "startup", "pass");
enteredpass = "";
	
	while (enteredpass == "") or (enteredpass == "CANCEL") or (enteredpass ~= getpass)  do
	
		enteredpass = Dialog.PasswordInput("Şifre", "Lütfen şifrenizi girin:", MB_ICONQUESTION);
		
		if enteredpass == "" then
			Dialog.Message("Hata!", "Şifre girmediniz.", MB_OK, MB_ICONEXCLAMATION);			
		elseif enteredpass == "CANCEL" then
			Application.Exit();		
		elseif enteredpass ~= getpass then
			Dialog.Message("Hata!", "Yanlış şifre girdiniz, lütfen tekrar deneyin.", MB_OK, MB_ICONEXCLAMATION);
		else
		
			if (Application.GetLastError() ~= 0) then
			Dialog.Message("Hata!", "Bir hata meydana geldi! Lütfen programı yönetici olarak çalıştırıp tekrar deneyin.", MB_OK, MB_ICONSTOP);
			end
		end
	end

 

 

  • Like 1

Share this post


Link to post
Share on other sites
Cyph3r, 25.01.2018 - 01:16 yazdı:

Şu şekilde test ettim çalıştı... 

getpass = INIFile.GetValue("files\\pw.vst", "startup", "pass");
enteredpass = "";
	
	while (enteredpass == "") or (enteredpass == "CANCEL") or (enteredpass ~= getpass)  do
	
		enteredpass = Dialog.PasswordInput("Şifre", "Lütfen şifrenizi girin:", MB_ICONQUESTION);
		
		if enteredpass == "" then
			Dialog.Message("Hata!", "Şifre girmediniz.", MB_OK, MB_ICONEXCLAMATION);			
		elseif enteredpass == "CANCEL" then
			Application.Exit();		
		elseif enteredpass ~= getpass then
			Dialog.Message("Hata!", "Yanlış şifre girdiniz, lütfen tekrar deneyin.", MB_OK, MB_ICONEXCLAMATION);
		else
		
			if (Application.GetLastError() ~= 0) then
			Dialog.Message("Hata!", "Bir hata meydana geldi! Lütfen programı yönetici olarak çalıştırıp tekrar deneyin.", MB_OK, MB_ICONSTOP);
			end
		end
	end

 

 

Çok sağol kardeşim, bunu arıyordum ne zamandır :)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×