Hakan ŞEN Kişisel Günce - Kategori : Sorun Giderme / http://www.hakansen.com

Şubat 17

Windows uçtu hal.dll hatası

Yorumlar (2) Tarih : 17 Şubat 2008 Pazar Saat: 18:37:59
Kategoriler : Sorun Giderme
Etiketler : hal.dll, system32, göçtü, hata

Töbe töbe dün gece yarısı tam işlerimi yetiştireyim diye harıl harıl çalışıyordum. Malum havalar kar kış kıyamet, fırsat bu fırsattı. Yetiştirmem gereken işlerde vardı.

Sabah 3 sularıydı aniden internet gidiverdi, bende makine zaten kasıldı fırsat bu fırsat bi restart atıyım dedim.

Amaninnn ne olsa iyi

Kod:
c:\Windows\system32\hal.dll kayıp yada bozuk gibi bi hata
yani sistem sıçtı demek istiyo.

Saat gecenin bi yarısı, evde CD yok ne yapıcaz bende sabah yaparım diye yattım.
Sabah uyandım tam kahvaltıda elektrikler gitti :@

Kadere bak gelmek bilmiyo, neyse anca geldi de sorunu düzelttim.

Sizinde başınıza gelirse diye söyliyim ne yapmanız gerektiğini.

XP Cdsi ile başlatın Recovery konsolunu açın

Kod:
copy e:\i386\hal.dl_ c:\windows\system32\hal.dll

komutu ile pcnize yükliyin. Sonra Exit ile çıkın.

Pcniz açılınca korkmayın, kocaman bir ekranla karşılaşacaksınız. Tüm donanımlarınız kendiliğinden uzunca bir süre sonra otomatik olarak yüklenecek.

İşte böyle. Ben şimdi yedeklerimi alıyorum bi sorun olmadan temiz bir sistem yenilemesi yapıcam.

Ağustos 6

BinaryToString Fonksiyonu

Yorumlar (0) Tarih : 6 Ağustos 2007 Pazartesi Saat: 20:12:05
Kategoriler : Makale, Sorun Giderme, Programlama
Etiketler : BinaryToString, xmlhttp, binary, string, fonksiyon, asp

Binary verileri stringlere çevirmeye yarayan bir fonksiyon, xmlHTTP ile veri çektiğimizde gelen binary verileri süzmemize yarayacaktır.

Kod:
Private  Function BinaryToString(Binary) 

     Dim  cl1, cl2, cl3, pl1, pl2, pl3 
     Dim  L 
        cl1 = 1 
        cl2 = 1 
        cl3 = 1 
        L = LenB(Binary) 
 
     Do  While cl1<=L 
          pl3 = pl3 &  Chr(AscB(MidB(Binary,cl1,1))) 
          cl1 = cl1 + 1 
          cl3 = cl3 + 1 
          If  cl3>300  Then 
                     pl2 = pl2 & pl3 
                     pl3 = "" 
                     cl3 = 1 
                     cl2 = cl2 + 1 
                      If  cl2>200  Then 
                             pl1 = pl1 & pl2 
                              pl2 = "" 
                              cl2 = 1 
                      End  If 
                  End If 
     Loop 
     BinaryToString = pl1 & pl2 & pl3 
End Function

Ağustos 6

Regsvr32 Kullanımının ve Hata İletilerinin Açıklaması

Yorumlar (2) Tarih : 6 Ağustos 2007 Pazartesi Saat: 19:37:06
Kategoriler : Makale, Sorun Giderme, Programlar
Etiketler : regsvr32, regsvr32.exe, component yükleme, hata iletileri, kullanım

Kendi kendini kaydedebilen dinamik bağlantı kitaplığı (DLL) veya ActiveX Denetimi (OCX) dosyaları gibi nesne bağlama ve katıştırma (OLE) denetimlerini kaydettirmek veya kaydını silmek için Regsvr32 aracını (Regsvr32.exe) kullanabilirsiniz. Bu işlem Windows, Microsoft Internet Explorer veya diğer programlarda sorun giderme için gerekli olabilir.

Regsvr32.exe Kullanımı
RegSvr32.exe`de aşağıdaki komut satırı seçenekleri bulunmaktadır:

Kod:
Regsvr32  [/n] [/i[:komut_satırı]] dll_adı


   /u - Sunucu kaydını kaldır<BR/>
   /i - DllInstall'u isteğe bağlı [komut_satırı] geçirerek çağır;
        /u ile kullanıldığında DllUninstall'u çağırır
   /n - DllRegisterServer'ı çağırma; bu seçenek
        /i ile birlikte kullanılmalıdır

                    
Regsvr32.exe`yi kullandığınızda, bileşeni belleğe yüklemeyi ve bileşenin DLLSelfRegister işlevini çağırmayı dener. Bu deneme başarılı olursa, Regsvr32.exe aracı başarılı olunduğunu gösteren bir iletişim kutusu görüntüler. Deneme başarısız olursa, Regsvr32.exe bir hata iletisi döndürür; bu ileti bir Win32 hata kodu içerebilir.

Regsvr32.exe Hata İletileri
Aşağıdaki liste, RegSvr32 hata iletilerini ve olası nedenleri içermektedir.

Tanınmayan bayrak: /geçersiz_bayrak

Geçersiz bir bayrak veya anahtar birleşimi yazdınız (bu makaledeki "Regsvr32.exe Kullanımı" bölümüne bakın).

DLL adı belirtilmedi.

.dll dosyası adını yazmadınız (bu makaledeki "Regsvr32.exe Kullanımı" bölümüne bakın).

Dll adı yüklendi ancak DllRegisterServer veya DllUnregisterServer giriş noktası bulunamadı.

Dll adı bir .dll veya .ocx dosyası değil. Örneğin, regsvr32 wjview.exe komutunun yazılması bu hata iletisine neden olur.

Dll adı yürütülebilir bir dosya değil ve bu dosya türü için kaydettirilmiş kayıt yardımcısı yok.

Dll adı yürütülebilir bir dosya (.exe, .dll veya .ocx) değil. Örneğin, regsvr32 autoexec.bat komutunun yazılması bu hata iletisine neden olur.

Dll adı yüklendi ancak DllRegisterServer veya DllUnregisterServer giriş noktası bulunamadı.

Dll adı verilmemiş olabilir veya Dll adı`nın bozuk bir sürümü bellekte yüklü olabilir. Dosyayı algılayıp kaldırmak için Pview aracını kullanmayı düşünün.

Dll adı kendini kaydettirebilir değil veya bozuk bir sürümü bellekte yüklü.

Örneğin, regsvr32 icwdial.dll komutunun yazılması, Icwdial.dll kendini kaydettirebilir olmadığından bu hata iletisini döndürür. Dll adı`nın bozuk bir sürümünün bellekte yüklü olduğundan şüpheleniyorsanız, bilgisayarınızı yeniden başlatmayı veya dosyanın özgün sürümünü yeniden ayıklamayı deneyin. Windows NT çalıştırıyorsanız Microsoft Windows NT Server 4.0 Resource Kit`teki Kill veya Pview aracını kullanmanız gerekebilir.

OleInitialize başarısız oldu (veya OleUninitialize başarısız oldu).

Regsvr32 aracının gerekli COM kitaplığı işlevlerini çağırmadan önce COM kitaplığını başlatması ve kapanırken kitaplığı kapatması gerekir. COM kitaplığını başlatma veya kapatma denemesi başarısız olursa bu hata iletileri oluşur. Örneğin, Ole32.dll dosyası bozulmuş veya sürümü yanlış olabilir.

LoadLibrary("Dll adı") başarısız oldu. GetlastError`ün döndürdüğü: 0x00000485

Winerror.h`deki 0x00000485 = 1157 (ERROR_DLL_NOT_FOUND) hata kodu "Bu uygulamayı çalıştırmak için gereken kitaplık dosyalarından biri bulunamıyor" anlamına gelir. Örneğin, regsvr32 olmayan.dll komutunun yazılması, Olmayan.dll dosyası bulunamazsa bu hata iletisini döndürür.

LoadLibrary("Dll adı") başarısız oldu. GetlastError`ün döndürdüğü: 0x00000002

Winerror.h`deki 0x00000002 = 2 (ERROR_FILE_NOT_FOUND) hata kodu "Sistem belirtilen dosyayı bulamıyor" anlamına gelir. Başka bir deyişle, bağımlı DLL bulunamamıştır. Örneğin, Tapi32.dll (bağımlılık) eksikken regsvr32 icwdial.dll komutunun yazılması bu hata iletisine neden olur.

LoadLibrary("dskmaint.dll") başarısız oldu. GetlastError`ün döndürdüğü: 0x000001f

Winerror.h`deki 0x000001f = 31 (ERROR_GEN_FAILURE) hata kodu "Sisteme bağlı bir aygıt çalışmıyor" anlamına gelir. Bir Win16 .dll dosyasını kaydettirmeye çalışırsanız bu davranış oluşabilir. Örneğin, regsvr32 dskmaint.dll komutunun yazılması bu hata iletisine neden olur.

DllRegisterServer (veya DllUnregisterServer) Dll adı başarısız oldu. Dönüş kodu: dize

Winerror.h`de dizeyi arayın.
Üste

Regsvr32.exe ve Bağımlılıklar
RegSvr32.exe aracı Kernel32.dll, User32.dll ve Ole32.dll dosyalarına (ve Windows NT`de Msvcrt.dll ve Advapi32.dll dosyalarına) bağımlıdır. Regsvr32.exe aracı kaydettirmeye veya kaydını silmeye çalıştığınız dosyayı tüm bağımlılıklarıyla birlikte yükler. Gereken bir dosya eksik veya bozuksa işlem başarısız olabilir.

Kaydettirmeye veya kaydını silmeye çalıştığınız dosyanın bağımlılıklarını belirlemek için Depends.exe`yi kullanabilirsiniz. Depends.exe Microsoft Windows 98 Kaynak Seti ve Microsoft Windows NT 4.0 Resource Kit destek araçlarında bulunmaktadır.

Ağustos 3

Youtube API Tarih Fonksiyonu - Epoch Converter Fonksiyonu (Unix Time)

Yorumlar (0) Tarih : 3 Ağustos 2007 Cuma Saat: 19:28:12
Kategoriler : Referanslar, Makale, Sorun Giderme, Programlama
Etiketler : youtube api, tarih, unix time, epoch, epoch converter, fonksiyon, function, slturkiye

Bugün youtube api ile ilgili bir çalışma yaptım, Bu çalışma sırasında Youtube`dan veri çekerken videolarla yorumlarla ilgili tarihler Unix Time formatında verilmiştir.

Örnek verecek olursak

Kod:
<upload_Time>1121398533</upload_Time> <!-- UNIX-style Time, Seconds since 1/1/1970 -->

şekilde verilmiş.

Bende ASP Vbasic kullanarak bunu normal tarih şekline nasıl çevirileceğini araştırdım, eğer ileride ihtiyacınız olursa buyrun.

Şimdiki Unix Zamanı;
Kod:


DateDiff("s", "01/01/1970 00:00:00", Now())


date2epoch fonksiyonu ile verilen tarihi Unix zamanına çevirmek için,
Kod:


Function Date2epoch(myDate)
Date2epoch = DateDiff("s", "01/01/1970 00:00:00", myDate)
End function


Kullanımı;
Kod:


Date2epoch(Now())


epoch2date komutu ile de Unix zamanını normal tarih değişkenine çevirmek için,
Kod:


Function epoch2Date(myEpoch)
epoch2Date = DateAdd("s", myEpoch, "01/01/1970 00:00:00")
End function



Belki bir gün lazım olur. Youtube API ile karaladığım siteyi görmek isterseniz adresi http://video.slturkiye.com Second Life Türkiye Video Dizini`ne bakabilirsiniz.

Temmuz 25

Seçim Boyası Çıkarma Formülü

Yorumlar (0) Tarih : 25 Temmuz 2007 Çarşamba Saat: 14:02:07
Kategoriler : Sorun Giderme
Etiketler : seçim, boyası, çıkarma, formülü

Türkiye seçim hengamesini atlattı, şimdi hükümet senaryoları konuşuluyor. Ama oy kullanan herkesin bir sorunu var: Parmağa, tırnağa musallat olan seçim boyası.
Boyayı çıkarmanın bir formülü mevcut. Biraz külfetli ancak denemek isteyene, denenmiş tarif şöyle:
"Limon suyu, yarım çay kaşığı tuz ve 4-5 damla sirkeyle karıştırılıp 30 dakika bekletilecek. Ardından bir süre zeytinyağında bekletilmiş parmak, karışıma sokulduktan sonra yıkanacak!"


eXTReMe Tracker