2009-03-12 14 views
1

Bazı metni şifreledim ve bir INI dosyasına koydum. Sonra değeri almak için getprivateprofilestring() kullanılır, ancak bazı son karakterler eksik. Tamamlanmamış olması için yeni bir satır karakteri olabileceğinden şüpheleniyorum. INI dosyasına yazma tamam. INI dosyasını açmak ve bölümlere ve anahtarlara bakmak - her şey yolunda. Sadece bu hataya neden olan kısmı.Getprivateprofilestring Bug

Lütfen herhangi bir yardım için teşekkür ederiz.

Teşekkür Eddie

+0

Bir örnek kod ve/veya ini'nin sorun bölümü yardımcı olacaktır. – AnthonyWJones

+0

Evet, bu olmadan yapabileceğimiz pek bir şey yok. – MarkJ

cevap

0

WritePrivateProfileStringW varsayılan olarak aktif ANSI kod sayfasında dosyaları yazar; WritePrivateProfileStringA, her zaman ANSI yazacaktır.

yön here izleyin en iyi sonuçları elde etmek ve dizeleri şifreleyerek ne zaman geri

1

İlk veri kapalı okurken GetPrivateProfileStringW kullanmak için, onlar INI dosyası içine damping önce Base64 dönüştürülür emin olun.

Büyük olasılıkla, şifrelenmiş dize INI ile ilgili API'ler tarafından çok iyi işlenmeyen bir ascii karakter yarattı.

0

Şifreleme, yazdığınız akışa NULL karakteri enjekte etmekten çok daha fazlasıdır. GetPrivateProfileString, bir NULL karakteri bulana kadar bir dize okuyacaktır.

Öyleyse Angry Hacker ile aynı fikirdeyim, Base64'e veya başka bir kullanıcı dostu okunabilir kodlamaya dönüşüyorum ve herhangi bir sorun yaşamayacaksınız.

İlgili konular