|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jan 2005
Città: Pagani(SA)
Messaggi: 1270
|
[VB.NET]variabili
Ho un piccolo problema che riguarda le variabili...
utilizzando questo script: Codice:
Private Declare Unicode Function GetPrivateProfileString Lib "kernel32" _
Alias "GetPrivateProfileStringW" (ByVal lpApplicationName As String, _
ByVal lpKeyName As String, ByVal lpDefault As String, _
ByVal lpReturnedString As String, ByVal nSize As Int32, _
ByVal lpFileName As String) As Int32
Private Declare Unicode Function WritePrivateProfileString Lib "kernel32" Alias _
"WritePrivateProfileStringW" (ByVal lpApplicationName _
As String, ByVal lpKeyName As String, ByVal lpString As String, _
ByVal lpFileName As String) As Long
Private FileNAME As String
Public Function ReadIniData(ByVal Section As String, ByVal Key As String, ByVal file As String) As String
Dim Valore As Long
Dim RetVal As String = Space(256)
FileNAME = System.AppDomain.CurrentDomain.BaseDirectory() & file
Valore = GetPrivateProfileString(Section, Key, "<Nessun valore>", RetVal, RetVal.Length, FileNAME)
Return Trim(RetVal.ToString)
End Function
Public Function WriteIniData(ByVal Section As String, ByVal Key As String, ByVal file As String) As String
Dim Valore As Long
Dim RetVal As String = Space(256)
FileNAME = System.AppDomain.CurrentDomain.BaseDirectory() & file
Valore = WritePrivateProfileString(Section, Key, "<NESSUN VALORE>", FileNAME)
Return Trim(RetVal.ToString)
End Function
Codice:
Dim Registration As String
Private Sub splash_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Registration = ReadIniData("REGISTER", "validation", "rTl.dll")
MsgBox(Registration)
If (Registration = "aaa") Then
MsgBox("ok")
End If
End Sub
Pero quando faccio l'if, stranamente, nn mi da il msgBox ok. Se faccio però: Codice:
Dim Registration As String
Private Sub splash_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Registration = "aaa"
MsgBox(Registration)
If (Registration = "aaa") Then
MsgBox("ok")
End If
End Sub
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Feb 2001
Città: Kasteddu
Messaggi: 1890
|
controlla eventuali spazi - tab o altri caratteri speciali che potrebbero essere presenti quando carichi la stringa dal file ini.
Ad esempio probabilmente ti sta prendendo i caratteri di a capo.
__________________
Asus P5Q-E - Intel Q6600 - Corsair 4GB DDR2 - Radeon HD5770 - Seagate 320GB sata2 16M - Audigy2 ZS Acer Aspire 3023 WLMI |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jan 2005
Città: Pagani(SA)
Messaggi: 1270
|
no, nn ci sono caratteri speciali nella stringa, ho controllato
|
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Feb 2001
Città: Kasteddu
Messaggi: 1890
|
Quote:
Controlla di nuovo... l'unica spiegazione è che le due stringhe non siano uguali. Stampati a video la lunghezza della stringa, se è come penso io non sarà 3.
__________________
Asus P5Q-E - Intel Q6600 - Corsair 4GB DDR2 - Radeon HD5770 - Seagate 320GB sata2 16M - Audigy2 ZS Acer Aspire 3023 WLMI |
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jan 2005
Città: Pagani(SA)
Messaggi: 1270
|
come faccio a controllare la lunghe dei caratteri ?
|
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Feb 2001
Città: Kasteddu
Messaggi: 1890
|
Quote:
__________________
Asus P5Q-E - Intel Q6600 - Corsair 4GB DDR2 - Radeon HD5770 - Seagate 320GB sata2 16M - Audigy2 ZS Acer Aspire 3023 WLMI |
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Jan 2005
Città: Pagani(SA)
Messaggi: 1270
|
4 caratteri
|
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Jan 2005
Città: Pagani(SA)
Messaggi: 1270
|
da cosa puo dipendere ? in vb.net quali sonmo i caratteri speciali ? Io so che sono \n\t\e\a
|
|
|
|
|
|
#9 |
|
Member
Iscritto dal: Jan 2005
Città: Torino
Messaggi: 81
|
Può darsi che la tua varibile registration sia uguale a: " aaa" o "aaa ", in questo caso nel messaggio ti sembrerà corretta (alllo spazio probabilmente non fai caso) ma comparandola nell IF risulta non eguale.
Stai anche attento al fatto che le lettere siano minuscole o maiuscole, vengono considerate differenti a meno che tu non abbia un "Option compare text" all'inizio del codice. Ciao
__________________
DaryL74 |
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Feb 2001
Città: Kasteddu
Messaggi: 1890
|
Quote:
Se la situazione è costante (tutti i campi del file .ini ti danno quel carattere in +) allora puoi semplicemente fare un substring
__________________
Asus P5Q-E - Intel Q6600 - Corsair 4GB DDR2 - Radeon HD5770 - Seagate 320GB sata2 16M - Audigy2 ZS Acer Aspire 3023 WLMI |
|
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Jan 2005
Città: Pagani(SA)
Messaggi: 1270
|
grazie, ci son riuscito finalmente
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 07:53.



















