Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [C#] Aiuto Con ComboBox [C#]
Forum - C# / VB.NET - [C#] Aiuto Con ComboBox [C#]

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
DexterELEL (Normal User)
Pro


Messaggi: 67
Iscritto: 05/01/2011

Segnala al moderatore
Postato alle 14:15
Venerdì, 22/07/2011
Ragazzi sto creando un programma per criptare delle righe di testo ho inserito 2 combobox per selezionare il CipherMode e il PaddingMode ma ora sono incappato in questo problema come faccio a diciamo sincronizzare le 2 combobox? Mi spiego meglio cioè una legge per esempio quella CipherModer CBC e l'altra PaddingMode Zeros come faccio capire al bottone Cripta che su CipherModer è CBC e su PaddingMode Zeros??
Tipo ho fatto una stron*** del genere per farvi capire (naturalmente questa non richiama ne Mode ne Padd... Non so Aiutatemi vi prego

Codice sorgente - presumibilmente Delphi

  1. if (comboBox1.Text == "CBC")
  2.                 {
  3.                     string Mode = CipherMode.OFB.ToString();
  4.                 }
  5.                 if (comboBox2.Text == "Zeros")
  6.                 {
  7.                     string Padd = PaddingMode.Zeros.ToString();
  8.                 }
  9.                     string TripleDES = EncryptTripleDES(textBox1.Text, true, textBox2.Text, Mode, Padd);
  10.                     textBox3.Text = TripleDES;
  11.                 }


Ultima modifica effettuata da DexterELEL il 22/07/2011 alle 14:17
PM
Avatar
Nullable (Normal User)
Expert


Messaggi: 217
Iscritto: 12/07/2011

Up
0
Down
V
Segnala al moderatore
Postato alle 14:49
Venerdì, 22/07/2011
Usa l'operatore logico &&.
EDIT: Ti consiglio di utilizzare la proprietà SelectedItem al posto di Text.

Ultima modifica effettuata da Nullable il 22/07/2011 alle 14:51
PM
Avatar
DexterELEL (Normal User)
Pro


Messaggi: 67
Iscritto: 05/01/2011

Up
0
Down
V
Segnala al moderatore
Postato alle 16:02
Venerdì, 22/07/2011
Si ma poi come faccio a far riconoscere qualche CipherModer andare ad inserire nell'Encrypter???
Non ci sarebbe un alternativa migliore?? eppure ci deve essere...
Poi spiegami come dovrei utilizzare l'operatore && a mio favore... perchè mi viene difficile capirlo...

Ultima modifica effettuata da DexterELEL il 22/07/2011 alle 16:08
PM
Avatar
Nullable (Normal User)
Expert


Messaggi: 217
Iscritto: 12/07/2011

Up
0
Down
V
Segnala al moderatore
Postato alle 16:33
Venerdì, 22/07/2011
Tu hai scritto che vuoi sincronizzare le due ComboBox ( ti consiglio di rinominarle e assegnare loro un nome più "decente" ). Io per sincronizzare capisco che vuoi in qualche modo verificarle entrambe e nello stesso tempo, ragion per cui ti ho scritto di utilizzare l'operatore logico && il cui utilizzo ( nel tuo codice ) diventa questo : if( comboBox1.Text == "CBC" && comboBox2.Text == "Zeros")

NB: Non conosco il resto del codice quindi non saprei cosa scriverti per riconoscere il CipherModer di cui tu parli.

Ultima modifica effettuata da Nullable il 22/07/2011 alle 16:34
PM
Avatar
DexterELEL (Normal User)
Pro


Messaggi: 67
Iscritto: 05/01/2011

Up
0
Down
V
Segnala al moderatore
Postato alle 16:42
Venerdì, 22/07/2011
praticamente ad ogni combobox1.SelectedItem il CipherMode deve assegnare la cosa giusta
Codice sorgente - presumibilmente C#

  1. if (comboBox1.SelectedItem == "CBC")
  2.                 {
  3.                     string Mode = CipherMode.CBC.ToString();
  4.                     string TripleDES = EncryptTripleDES(textBox81.Text, true, textBox83.Text, Mode, Padd);
  5.                     textBox82.Text = TripleDES;
  6.                 }
  7.                 if (comboBox1.SelectedItem == OFB")
  8.                {
  9.                    string Mode = CipherMode.OFB.ToString();
  10.                    string TripleDES = EncryptTripleDES(textBox81.Text, true, textBox83.Text, Mode, Padd);
  11.                    textBox82.Text = TripleDES;
  12.                }



Ok se era solo il CipherMode andava tutto alla grande siccome c'è anche il PaddingMode da inserire (stringa chiamata Padd) non ho idee su come far funzionare le 2 comboBox... capito???

PM
Avatar
Nullable (Normal User)
Expert


Messaggi: 217
Iscritto: 12/07/2011

Up
0
Down
V
Segnala al moderatore
Postato alle 16:52
Venerdì, 22/07/2011
Sarà che sono ignorante per quanto riguarda la cryptazione ma ti giuro che non ho capito cosa tu voglia fare...Potresti ulteriormente spiegarti per favore ?

PM
Avatar
DexterELEL (Normal User)
Pro


Messaggi: 67
Iscritto: 05/01/2011

Up
0
Down
V
Segnala al moderatore
Postato alle 17:02
Venerdì, 22/07/2011
Certamente allora:

Codice sorgente - presumibilmente C# / VB.NET

  1. string TripleDES = EncryptTripleDES(textBox81.Text, true, textBox83.Text, Mode, Padd);


Questa string più precisamente da EncryptTripleDES accetta 5 argomenti che elenco

1) stringa da criptare (textBox81.Text)
2) bool se usare l'hash (true)
3) stringa della chiave (textBox83.Text)
4) stringa del CipherMode (System.Security.Cryptography.CipherMode)
5) stringa del PaddingMode (System.Security.Cryptography.PaddingMode)

Allora io ho 2 comboBox
1) Per il CipherMode dove gli item sono CBC,OFB ecc
2) Per il PaddingMode dove gli item sono Zeros, PKCS7 ecc

Se devo selezionare il ChiperMode Esatto sapendo il Testo della comboBox Farei così
(Si noti che la stringa Padd qui non c'è)
Codice sorgente - presumibilmente C#

  1. if (comboBox1.SelectedItem == "CBC")
  2.                 {
  3.                     string Mode = CipherMode.CBC.ToString();
  4.                     string TripleDES = EncryptTripleDES(textBox81.Text, true, textBox83.Text, Mode);
  5.                     textBox82.Text = TripleDES;
  6.                 }



Ora il problema è aggiungere il ComboBox2 per il Padding...
Codice sorgente - presumibilmente C#

  1. if (comboBox1.SelectedItem == "CBC")
  2.                 {
  3. if (comboBox2.SelectedItem == "PKCS7")
  4. {
  5.                     string Padd = PaddingMode.PKCS7.ToString();
  6.                     string Mode = CipherMode.CBC.ToString();
  7.                     string TripleDES = EncryptTripleDES(textBox81.Text, true, textBox83.Text, Mode, Padd);
  8.                     textBox82.Text = TripleDES;
  9. }
  10.                 }



E così dovrebbe andare solo se si seleziona su la prima CBC e la seconda PKCS7 ma per tutte le altre combinazioni?? non è che posso stare a scrivere 2000 if... ecco il problema

PM
Avatar
Nullable (Normal User)
Expert


Messaggi: 217
Iscritto: 12/07/2011

Up
0
Down
V
Segnala al moderatore
Postato alle 17:23
Venerdì, 22/07/2011
Potresti usare un enumeratore per il PaddingMode e il CipherMode.

PM
Avatar
DexterELEL (Normal User)
Pro


Messaggi: 67
Iscritto: 05/01/2011

Up
0
Down
V
Segnala al moderatore
Postato alle 17:29
Venerdì, 22/07/2011
Forse ancora non hai capito il problema non sono il Cipher o il PaddingMode sono le ComboBox che non riesco a gestire...

PM
Pagine: [ 1 2 ] Precedente | Prossimo