آژانس هواپیماییdaftare shoma
nexpay

دلفي و نام كامپيوتر

شروع موضوع توسط hpxyz ‏15 دسامبر 2005 در انجمن Delphi

  1. hpxyz

    hpxyz کاربر تازه وارد

    تاریخ عضویت:
    ‏11 می 2004
    نوشته ها:
    90
    تشکر شده:
    0
    دوستان سلام
    من كد ي را ميخام كه با اون بتونم اسم كامپيوتري كه الان كاربر روي اون داره كار ميكنه را به عنوان خروجي بهم بده
    computer name
     
  2. programmer

    programmer کاربر تازه وارد

    تاریخ عضویت:
    ‏1 نوامبر 2005
    نوشته ها:
    84
    تشکر شده:
    0
    سلام
    میتونید از این تابع استفاده کنید:
    کد:
    function get_computer_name:string;
    var
     name:array[0..31]of char;
     size:Dword;
    begin
     size:=31;
     if(GetComputerName(name,size))then
      result:=string(name)
     else
      result:='Error';
    end;
    اگه مشکلی باشه و برنامه نتونه نام کامپیوتر رو پیدا کنه رشته 'Error' رو به جای نام کامپیوتر بر میگردونه.فقط تابع رو دستکاری نکنید،منظورم اعداد توی تابع هستش.
    امیدوارم مفید باشه.
     
  3. hpxyz

    hpxyz کاربر تازه وارد

    تاریخ عضویت:
    ‏11 می 2004
    نوشته ها:
    90
    تشکر شده:
    0
    ممنون از راهنماييت . ولي من نميدونم اينا را كجا تو دلفي بنويسم ميخام با كليك روي يه دكمه اسم را نشون بده . من با فانكشن كار نكردم ممنون ميشم بگي كجا بنويسم
     
  4. programmer

    programmer کاربر تازه وارد

    تاریخ عضویت:
    ‏1 نوامبر 2005
    نوشته ها:
    84
    تشکر شده:
    0
    در زیر این قسمت در کد برنامه :
    کد:
    implementation
    {$R *.dfm}
    این تابع :
    کد:
     function get_computer_name:string;
    var
     name:array[0..31]of char;
     size:Dword;
    begin
     size:=31;
     if(GetComputerName(name,size))then
      result:=string(name)
     else
      result:='Error';
    end;
    رو کپی کنید.
    حالا یه کلید (Button) به فرم اضافه کنید و توی تابع مربوط به فشردن کلید اون این کد رو قرار بدید:
    کد:
     showmessage('Computer Name is '+Get_computer_name);
    حالا با فشردن کلید نام کامپیوتر در یک پیغام نمایش داده میشه.
     
  5. programmer

    programmer کاربر تازه وارد

    تاریخ عضویت:
    ‏1 نوامبر 2005
    نوشته ها:
    84
    تشکر شده:
    0
    فکر کنم شما بدون یاد گرفتن پاسکال سراغ دلفی رفتین.
    توصیه میکنم ابتدا پاسکال رو یاد بگیرین تا بتونید بطور کامل از امکانات دلفی استفاده کنید.
     
  6. hpxyz

    hpxyz کاربر تازه وارد

    تاریخ عضویت:
    ‏11 می 2004
    نوشته ها:
    90
    تشکر شده:
    0
    ممنون از جوابت
    يه سوال ديگه ، ممنون ميشم اگه راهنمايي كني
    ( table1.word='+QuotedStr(eword.Text
    كار اين چيه ؟؟QuotedStr
     
  7. programmer

    programmer کاربر تازه وارد

    تاریخ عضویت:
    ‏1 نوامبر 2005
    نوشته ها:
    84
    تشکر شده:
    0
    خواهش میکنم.

    QuotedStr یه تابع هست که یه String به عنوان ورودی میگیره و دوتا کوتیشن ( ' ) به اول و آخر اون اضافه میکنه و اونو به عنوان خروجی بر میگردونه. مثلآ salam رو تبدیل میکنه به 'salam' .
     
  8. hpxyz

    hpxyz کاربر تازه وارد

    تاریخ عضویت:
    ‏11 می 2004
    نوشته ها:
    90
    تشکر شده:
    0
    خيلي ممنون از راهنماييت
    من بعد از اينكه نام كامپيوتر را فهميدم ميخام كه قبل از اون \\ بزارم و بعدش هم مسير مورد نظر ولي هر چه بك اسلش ها را ميزارم موقع اجرا ميرند آخر عبارت . چه كنم؟؟؟
    masir:= '\\' + computername +'\'+ masir
     
  9. programmer

    programmer کاربر تازه وارد

    تاریخ عضویت:
    ‏1 نوامبر 2005
    نوشته ها:
    84
    تشکر شده:
    0
    خواهش میکنم.
    میشه بگید می خواهید چکار کنید ؟ می خواهید برای شبکه برنامه بنویسید ؟
    مشکلی برای اضافه کردن '\\' به آخر رشته نیست !
    مطمئن هستید که متغیر masir و computername از نوع string هستند ؟
    اگه مشکل حل نشد و اگه مایل هستید کد برنامه رو بزارید تا با هم بررسی کنیم.
     
  10. hpxyz

    hpxyz کاربر تازه وارد

    تاریخ عضویت:
    ‏11 می 2004
    نوشته ها:
    90
    تشکر شده:
    0
    ممنون كه جواب دادي
    اين برنامه بايد رو شبكه كار كنه . در حقيقت تعدادي نامه داريم كه ميخام اونا را توي بانكي ذخيره كنم . امكان جستجو و ... هم داشته باشه
    اپراتوري كه نامه ها را وارد ميكنه مسيري كه اسكن شده نامه در اونجا هست را تو بانك ذخيره ميكنه حالا من ميخام موقع ذخيره شدن مسير اسم كامپيوتر را اول اون قرار بده تا بقيه كه ميخوان از شبكه نامه ها را ببينند و آدرسي كه فايل اسكن شده اونجاست را بايد اين مدلي بنويسم
    اگه \\ قبل از شروع آدرس نباشه كه باز نميكنه

    يه سوال ديگه :
    من با دستور like تو اس كيو ال ميخام كاركنم
    (table1.subject LIKE "%esubject.Text%")
    وقتي يه كلمه ثابت را مينويسم بهم جواب ميده ولي براي esubject.Text چيزي پيدا نميكنه . چرا؟؟

    راستي نميتونم سورس را بزارم . ممنون ميشم اگه بازم راهنمايي كني
     
  11. programmer

    programmer کاربر تازه وارد

    تاریخ عضویت:
    ‏1 نوامبر 2005
    نوشته ها:
    84
    تشکر شده:
    0
    تصحیح پست شماره 9# :
    =>مشکلی برای اضافه کردن '\\' به ابتدای رشته نیست!
    => منظور من این نبود که کل سورس برنامتون رو بزارید!!! بلکه تعریف متغیر های masir و computername و اون خطوطی که مربوط به اضافه کردن '\\' به رشته بود منظور من بود.
    _______________________________________________________

    در این مورد اطلاعات کافی ندارم.
     
  12. hpxyz

    hpxyz کاربر تازه وارد

    تاریخ عضویت:
    ‏11 می 2004
    نوشته ها:
    90
    تشکر شده:
    0
    پروگرمر جان ممنون. اينم كد اون قسمت

    کد:
    procedure TFsabt.BtnshowClick(Sender: TObject);
    
    var
    masir,cname: string;
    begin
    cname:=Get_computer_name ;
    //masir:= dbg1.SelectedRows.Items[2];
    masir := dm1.Table1['path'] ;
    masir:= '\\' + cname +'\'+ masir;
    showmessage(masir);
    ShellExecute(Handle, 'open',PChar(masir),nil,nil,SW_SHOWNORMAL);
    
    end;
    در مورد dbgrid با چه كدي تعداد سطر هاش را بشمارم ؟؟
    dbg1.Columns.Count
    براي كار كردن با محتواي ستون مثلا دوم dbgrid چه دستوري ؟؟؟ اين دستور كه كار نمي كنه
    if dbg1.SelectedRows.Items[2]= 0 then
    showmessage ('äÇãå Çí ÈÇ Çíä ãÔÎÕÇÊ æÌæÏ äÏÇÑÏ');
     
  13. avajang.com .leftjee.ir.right
  14. hpxyz

    hpxyz کاربر تازه وارد

    تاریخ عضویت:
    ‏11 می 2004
    نوشته ها:
    90
    تشکر شده:
    0
    در مورد سوالي كه تعدا ركوردهاي داخل گريد را ميخواستم مسئله حل شد
    i:=dbg1.DataSource.DataSet.RecordCount;

    يه سوال ديگه از اونايي كه برنامه براي شبكه نوشته اند
    من با دلفي و اكسس اين برنامه را دارم مينويسم براي استفاده تو شبكه . براي استفاده بايد بانكش را روي كامپيوتري با ويندوز سرور قرار بدم يا مثلا ميشه روي دستگاهي كه ويندوز اكس پي هم داره گذاشت و كلاينتها بهش دسترسي داشته باشند . من تا حالا تحت شبكه ننوشتم و خيلي وارد نيستم . ممنون ميشم راهنمايي كنيد
     
  15. programmer

    programmer کاربر تازه وارد

    تاریخ عضویت:
    ‏1 نوامبر 2005
    نوشته ها:
    84
    تشکر شده:
    0
    سلام
    بهتره سوالات جدیدتون رو در تاپیک جدیدی اعلام کنید تا سایر دوستان متوجه بشن و زودتر کمکتون کنن !
     
zarpopخرید بک لینک عسل طبیعی و گرده گل ایرانی