Duyuruyu Kapat
Facebook Gözat
Twitter Gözat

msvcrt.dll hatası nedir ?

Konu, 'C / C++' kısmında zombi tarafından paylaşıldı.

  1. zombi

    zombi Üye

    Kayıt:
    27 Kasım 2007
    Mesajlar:
    189
    Beğenilen Mesajlar:
    0
    Meslek:
    Bilgisayar Donanım
    Şehir:
    c++ World
    DevC++ idesi ile yaptığım program çalışırken belli bir zaman sonra msvcrt.dll hatası verdiriyor bunu neden yapar _?
     
  2. acehreli

    acehreli Ali Çehreli

    Kayıt:
    19 Ekim 2002
    Mesajlar:
    4,973
    Beğenilen Mesajlar:
    2
    Bildigimiz kadariyla tahminler:

    - msvcrt.dll yok
    - icinde hatalar var
    - icindeki fonksiyonlari yanlis cagiriyoruz

    Ali
     
  3. printf

    printf Daimi Üye

    Kayıt:
    9 Ağustos 2008
    Mesajlar:
    2,095
    Beğenilen Mesajlar:
    0
    Meslek:
    Mühendis Adayı , okuyor
    Şehir:
    Ankara||Istanbul
    MSVCRT kısaltmasını uzatırsanız , Microsoft Visual C Runtime'ı elde ediyorsunuz .
    Bilgisayara Microsoft Visual C Runtime yüklemek sorunu çözer gibi geliyor ,
    yada bir şekilde projeye dahil etmek .
     
  4. VanlochMonster

    VanlochMonster Aktif Üye

    Kayıt:
    26 Şubat 2008
    Mesajlar:
    326
    Beğenilen Mesajlar:
    0
    Nedir hata mesajı?

    Access violation reading at 0x.... mı ?

    Kolay Gelsin

    Bekir.
     
  5. zombi

    zombi Üye

    Kayıt:
    27 Kasım 2007
    Mesajlar:
    189
    Beğenilen Mesajlar:
    0
    Meslek:
    Bilgisayar Donanım
    Şehir:
    c++ World
    sayın;

    @acehreli ;msvcrt.dll yok derken nerde yok onu anlamadım system32 içinde o dll var

    @printf ;Bilgisayara Microsoft Visual C Runtime yüklemek sorunu çözer gibi demişsiniz deneyeceğim

    @VanlochMonster ;hatayı tam olarak yazayım..
     
  6. zombi

    zombi Üye

    Kayıt:
    27 Kasım 2007
    Mesajlar:
    189
    Beğenilen Mesajlar:
    0
    Meslek:
    Bilgisayar Donanım
    Şehir:
    c++ World
    sayın @VanlochMonster cevap biraz geç oldu ancak evet dediğiniz gibi hata Access violation reading at 0x.... diye gidiyor_?
     
  7. Yavuz Soytürk

    Yavuz Soytürk Daimi Üye

    Kayıt:
    30 Mayıs 2004
    Mesajlar:
    964
    Beğenilen Mesajlar:
    0
    O zaman kodun hatali. NULL degeri olan bir pointer'in gosterdigi nesneye ulasmaya calisiyorsun.

    Programi debugger ile calistirirsan hatanin nerede olustugunu gostermesi lazim.
     
  8. VanlochMonster

    VanlochMonster Aktif Üye

    Kayıt:
    26 Şubat 2008
    Mesajlar:
    326
    Beğenilen Mesajlar:
    0
    Evet birseyleri myavuzselim arkadasımızın dedigi gibi silmissin veya sildikten sonra ne bileyim NULL testi yapıyorsun, bu tip sorunlardan kaynaklanabilir. Eğer problem debug modunda da cikiyorsa ne mutlu sana :) cozumu daha kolay, direk debug edebilirsin. Ama eğer sadece release mode da çıkıyorsa daha zorlu bir problem.

    http://www.codeproject.com/KB/debug/survivereleasever.aspx burada da bu tip problemler sıklıkla karsılasıldığı icin boyle bir toparlama yapılmış.


    Eğer release modda ise, belki sen Visual Studio kullanmıyorsun ama yukarıdakilerini okuyup aşağıdakine benzer bir yontemi uygulayabilirsin.

    http://www.codeproject.com/KB/debug/mapfile.aspx

    Su boundschecker vb. programlarda isine yarayabilirler.

    Bence biraz hafıza ayırma ve geri verme islevlerini ornegin copy constructorlarını atama operatorlerini kontrol et, eğer goremezsen yukarıdaki yontemlere basvurabilirsin.

    Bekir.
     
  9. zombi

    zombi Üye

    Kayıt:
    27 Kasım 2007
    Mesajlar:
    189
    Beğenilen Mesajlar:
    0
    Meslek:
    Bilgisayar Donanım
    Şehir:
    c++ World
    Merhaba ben DevC++ 4.9.9.2 kullanıyorum ve bahsettiğiniz debug modunu nasıl uygulayacağım_?
     
  10. zombi

    zombi Üye

    Kayıt:
    27 Kasım 2007
    Mesajlar:
    189
    Beğenilen Mesajlar:
    0
    Meslek:
    Bilgisayar Donanım
    Şehir:
    c++ World
    Ben programı DevC++ idesinde debugger ile çalıştırmaya çalıştım fakat yapamadım benim projem .exe değil bir dll rica etsem yardımcı olsanızda hatayı bulsam. Derlenirken derleniyor fakat sizin söylediğinize göre demekki birşey yanlışki program çalışırken msvcrt.dll hatası veriyor. :(
     
  11. zombi

    zombi Üye

    Kayıt:
    27 Kasım 2007
    Mesajlar:
    189
    Beğenilen Mesajlar:
    0
    Meslek:
    Bilgisayar Donanım
    Şehir:
    c++ World
    bu hata beni delirtecek. :(

    [​IMG]
     
  12. acehreli

    acehreli Ali Çehreli

    Kayıt:
    19 Ekim 2002
    Mesajlar:
    4,973
    Beğenilen Mesajlar:
    2
    O tür bir hata, elinde NULL olan bir işaretçiyi dizi gibi kullandığında ortaya çıkabilir:

    Kod:
    printf("%s", bellek[1]);
    bellek geçerli bir adres ise çalışır, ama bellek'in değeri NULL ise programın 0x00000001 adresi erişir.

    Bence programında öyle bir nokta var. "[1]" gibi bir dizi erişimi var mı? Eğer mümkünse, ve bellek'in NULL olması normalse, erişim NULL olmadığı zamanda yapmak hatayı giderir:

    Kod:
    if (bellek) {
        printf("%s", bellek[1]);
    } else {
        printf("NULL geldi");
    }
    Tabii bellek'in NULL olmasının normal olup olmadığını bilemem. (?)

    Ali
     
  13. Furkan Onka Uğur

    Furkan Onka Uğur Moderatör Yetkili Kişi

    Kayıt:
    12 Eylül 2008
    Mesajlar:
    3,599
    Beğenilen Mesajlar:
    14
    Şehir:
    Ankara
    msvcrt.dll dediğimiz dosya öyle bir dosya kii:
    http://xpdll.nirsoft.net/msvcrt_dll.html sadece bağlantıyı inceleyin.

    Açıklamak istediğim nokta kodlarınızı görmeden veya siz debug yapmadan boşa kürek çekiyor olabiliriz... Dev-CPP ile çalışmayalı uzun zaman oldu: http://www.bloodshed.net/dev/faq.html#debug bakalım debug etmeye yarayacak mı? Olmadı dll dosyanızı öncelikle exe olarak derleyip debug edin. Bunlar çözüm olmadıysa başka bir IDE kullanın. Örneğin VC++2008
     
  14. zombi

    zombi Üye

    Kayıt:
    27 Kasım 2007
    Mesajlar:
    189
    Beğenilen Mesajlar:
    0
    Meslek:
    Bilgisayar Donanım
    Şehir:
    c++ World
    Merhaba VC++2008 bir çok programcının kullandığı veya tercih bir ide olabilir benim DevC++ idesini seçmemde vede kullanmamdaki tercihim kendime göre özel bir sebebi var. Özellikle VC++2008 vede Borland2010 kullansam görselliği oluştururken yani arayüzü yaparken çok rahat oluyor DevC++ da ise baya uğraştırıyor ben ResEd kullanmıyorum çünkü DevC++ daki resource.rc dosyamı bozuyor. Sağolsun Ali hocam baya ilgilendi sorunuda bulduk gibi sorunu çözdüğümüzde hatalı vede hatası düzeltişmiş kodları burda vereceğim herkes faydalanmış olsun belki benim gibi durumda olanlar vardır veya olacaktır herkes faydalansın. Bu arada Ali hocam hataya dair bir örnek vermiş şu an işyerindeyim akşam eve gidince onun verdiği örneğe dayanarak koda bakacağım inşallah sorun çözülür.
     
  15. zombi

    zombi Üye

    Kayıt:
    27 Kasım 2007
    Mesajlar:
    189
    Beğenilen Mesajlar:
    0
    Meslek:
    Bilgisayar Donanım
    Şehir:
    c++ World
    Malesef sorunu çözemedim mecburen ide yi değiştirip öyle deneyeceğim bakalım aynı sorun devam edecekmi_? Kodları çalışır halde bölüm bölüm geçireceğim bakalım aynı hata gene çıkarsa ozaman hatalı kod bloğunu yakalarım. Birde Codegear Rad Studio 2010 da Debugger ile hata nasıl aranıyor bilen varsa yazabilirmi._?
     
  16. zombi

    zombi Üye

    Kayıt:
    27 Kasım 2007
    Mesajlar:
    189
    Beğenilen Mesajlar:
    0
    Meslek:
    Bilgisayar Donanım
    Şehir:
    c++ World
    merhaba yabancı bir forumda sordum şöyle bir cevap gelmiş;

    I suspect you are overflowing one of your char * buffers.I suspect you are overflowing one of your char * buffers.
     
  17. Furkan Onka Uğur

    Furkan Onka Uğur Moderatör Yetkili Kişi

    Kayıt:
    12 Eylül 2008
    Mesajlar:
    3,599
    Beğenilen Mesajlar:
    14
    Şehir:
    Ankara
    Ali Hoca'mın dediğinden pekte farklı bir şey söylememiş. Belleğin ulaşmamanız gereken bir yerine ulaşmaya çalışıyorsunuz.