ali::12 Posted August 16, 2010 Share Posted August 16, 2010 Ams ile pc de arama yaptırmak istiyorum fakat yaptıgım aratma sadece C: veya her hangi bir sürücünün ana dizininde oluyor yani alt klasörlerde aratma yapamıyorum bunu nasıl çözerim arkadaşlar Link to comment Share on other sites More sharing options...
KintaRo Posted August 16, 2010 Share Posted August 16, 2010 alt dizinlerde arama yapmak için ya şu şekilde tam yolu belirtmelisiniz: File.Find("C:\\alt_klasor", "dosya.exe", false, false, nil, nil) ya da dosya adından sonra gelen booleanı false değilde true yapacaksınız yani şöyle: File.Find("C:\\", "dosya.exe", true, false, nil, nil) Bu kısım Recurse'dur yani alt klasorlerde aranıp aranmayacağını belirtir. Link to comment Share on other sites More sharing options...
ali::12 Posted August 16, 2010 Author Share Posted August 16, 2010 İnputa girilen dosyayı aratacagım ben şuşekilde olurmu url=Input.gettext ("ıNPUT1"); File.Find("C:\\", URL, true, false, nil, nil) BU ŞEKİLE OLURMU BİLMİYRUM AMA SADECE sorayım birde ben şu şekilde yapıyorum yani combobox dan sürücüyü seçiyorum ınputa gidiğim dosya comboboxdaki sürücüde arıyor oyüzdende bendeki kod şu şekilde url=Input.gettext ("ıNPUT1"); sdrive = (Burası secilen ürücüyü veriyor ) kodu aklımda değil File.OpenURL(url..sdrive,SW_SHOWNORMAL); bu şekilde bir kod var elimde Link to comment Share on other sites More sharing options...
KintaRo Posted August 16, 2010 Share Posted August 16, 2010 yani aslında tam kodu gormeden birşey soylemek dogru değil ama genel yapı dogru gibi yalnız en alttaki koddya yani: File.OpenURL(url..sdrive,SW_SHOWNORMAL); burda url..sdrive dedğiniz zaman yanlış olur çünkü url değişkeni zaten size tam yolu verecektir yani örneğin; C:\resimler\a.jpg şeklinde. Birde bunun önüne sdrive yani sürücü eklerseniz şöyle bir dosyayı açmaya çalışacak C:\C:\resimler\a.jpg ve açamayacak. Ayrıca File.OpenURL değil File.Open komutunu kullanın. Link to comment Share on other sites More sharing options...
ali::12 Posted August 16, 2010 Author Share Posted August 16, 2010 O zman komutu şu şekilde düzeltsem sporun çözülecek url=Input.gettext ("ıNPUT1"); File.Open("C:\\", URL, true, false, nil, nil) bu şekilde ınputa girilen dosyayı c de ve alt dizinlerinde arayacak sanırım dogrudur. sdrive değişlkenini comboboxta hangi sürücü seçili ise orada arasın diye kullanıyordum Link to comment Share on other sites More sharing options...
KintaRo Posted August 16, 2010 Share Posted August 16, 2010 sdrive'i gene kullan üst kısımlarda değişiklik yok sadece dosyayı bulup çalıştırırken kullanma. Ayrıca File.Find dönüşü tablodur. Yani url = file.find diyorsan geri dönüşünde ya for döngüsü ile kullanacaksın yada url[1] şeklinde... Link to comment Share on other sites More sharing options...
ali::12 Posted August 16, 2010 Author Share Posted August 16, 2010 Kafam karıştı şimdi kısaca ınputa girilen bir dosya ismini c de ve alt dizinlerinde aramak için nasıl bir yol izlemem gerek sdrive kullanmayacagım Link to comment Share on other sites More sharing options...
KintaRo Posted August 16, 2010 Share Posted August 16, 2010 sMetin = Input.GetText("Input1") -- inputtaki metni al tDosya = File.Find("C:\\", sMetin, true, false, nil, nil) -- inputtaki metni C:\'de ara ve gelen sonucu tDosya tablosuna depola if tDosya ~= nil then -- eğer tablo boş değilse (yani dosya bulunmuşsa) Shell.Execute(tDosya[1], "open", "", "C:\\", SW_SHOWNORMAL, false) -- bulunan dosyayı çalıştır else -- tablo boşsa Dialog.Message("Hata", "Dosya bulunamadı") -- hata ver. end Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.