Klasör adresi belirleme (Ağ ortamınıda tarama, I/O 123 Err)

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
muskut
Kıdemli Üye
Mesajlar: 1118
Kayıt: 22 Ara 2003 09:50
Konum: Sandalyemden
İletişim:

Klasör adresi belirleme (Ağ ortamınıda tarama, I/O 123 Err)

Mesaj gönderen muskut »

Bir dosyayı farklı bir alana kaydedebilmesi için hedef yol belitmek için izleyebileceğim bir yol var mı? Dialogs paletindeki SaveAs bileşeni ile bunu yapabilirmiyim? SaveAs bileşenini kullanırken, yeni isim falan vermem gerekiyor. Benim istediğim tek şey, bileşen execute edildiğinde sadece hedef yol belirlensin sonra ok densin ve o hedef yolu alabileyim,

örneğin:

c:\hebele\muskut\

klasörü gibi.

iyi çalışmalar
En son muskut tarafından 17 Eki 2006 03:51 tarihinde düzenlendi, toplamda 2 kere düzenlendi.
mkysoft
Kıdemli Üye
Mesajlar: 3105
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Mesaj gönderen mkysoft »

sizin aradığınız folder dialog.

Kod: Tümünü seç

if SelectDirectory('Select a folder:', 'C:\', DirSelected) then
gibi çağırabilirsiniz.
Kullanıcı avatarı
muskut
Kıdemli Üye
Mesajlar: 1118
Kayıt: 22 Ara 2003 09:50
Konum: Sandalyemden
İletişim:

Mesaj gönderen muskut »

peki bu selectdirectory hangi bileşende veya hangi unitte bulabilirim?
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

Kesin bulmuşsundur ama SelectDirectory F1 deyince QDialogs çıkıyor :wink:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Kullanıcı avatarı
muskut
Kıdemli Üye
Mesajlar: 1118
Kayıt: 22 Ara 2003 09:50
Konum: Sandalyemden
İletişim:

Mesaj gönderen muskut »

Sanırım biraz yorgunluk, biraz orucun etkisi, kafada fosfor tükendi :) F1 e basmak aklıma gelmedi :lol:
Kullanıcı avatarı
muskut
Kıdemli Üye
Mesajlar: 1118
Kayıt: 22 Ara 2003 09:50
Konum: Sandalyemden
İletişim:

Mesaj gönderen muskut »

peki bu cevaba ek olarak, directory listesinde AĞ üzerindeki bağlantılarıda göstermem mümkün mü? Yada bu cevaba alternatif olabilecek başka bir çözüm öneriniz varmıdır (ağ bağlantılarınıda gösterebileceğim dialog penceresi)
Kullanıcı avatarı
muskut
Kıdemli Üye
Mesajlar: 1118
Kayıt: 22 Ara 2003 09:50
Konum: Sandalyemden
İletişim:

Mesaj gönderen muskut »

kodu kullandığım formda birtanede opendialog bileşeni var. Bu bileşeni ;

Kod: Tümünü seç

  if opndlgFrom.Execute then
  begin
    Nerden := opndlgFrom.FileName;
    edtFrom.Text := Nerden;
  end;
şeklinde çalıştırdıktan sonra, başka bir buton ile

Kod: Tümünü seç

var
  Dir: string;
begin
  Dir := 'C:\';
  SelectDirectory(Dir, [sdAllowCreate, sdPerformCreate, sdPrompt],SELDIRHELP);
kodunu çalıştırdığımda;

EInOutError with Message 'I/O error 123'

şeklinde bir hata mesajı alıyorum. Opendialog bileşenini hiç execute etmeden diğer selectdirectory işlemi sorunsuz çalışıyor. Herşey opendialogun execute olması ile oluyor. Varmı bir fikriniz?
Kullanıcı avatarı
hbahadir
Kıdemli Üye
Mesajlar: 544
Kayıt: 06 Ara 2004 05:03
Konum: BURSA idi artık İST.
İletişim:

Mesaj gönderen hbahadir »

Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4740
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

Tamamen ezber bir çözümdür. Referans ve kod yazıcam...

Kod: Tümünü seç

function BrowseDialog
 (const Title: string; const Flag: integer): string;
var   // Uses ShlObj
  lpItemID    : PItemIDList;
  BrowseInfo  : TBrowseInfo;
  DisplayName : array[0..MAX_PATH] of char;
  TempPath    : array[0..MAX_PATH] of char;
begin
  Result := '';
  FillChar(BrowseInfo, sizeof(TBrowseInfo), #0);
  with BrowseInfo do begin
    hwndOwner      := Application.Handle;
    pszDisplayName := @DisplayName;
    lpszTitle      := PChar(Title);
    ulFlags        := Flag;
  end;
  lpItemID := SHBrowseForFolder(BrowseInfo);
  if lpItemId <> nil then begin
    SHGetPathFromIDList(lpItemID, TempPath);
    Result := TempPath;
    GlobalFreePtr(lpItemID);
  end;
end;
Ref : http://delphi.about.com/od/windowsshell ... 70400a.htm
Resim
Resim ....Resim
Kullanıcı avatarı
muskut
Kıdemli Üye
Mesajlar: 1118
Kayıt: 22 Ara 2003 09:50
Konum: Sandalyemden
İletişim:

Mesaj gönderen muskut »

referanstaki link (http://delphi.about.com/od/windowsshell ... 70400a.htm) işimi fazlasıyla gördü, ilgilenen herkeze teşekkürler.
Cevapla