View Full Version : درخواست کامپوننت توسط فایل اجرایی
khoshblagh
شنبه 10 اسفند 1387, 07:38 صبح
با سلام خدمت دوستان
احتراما در یک برنامه نوشته شده با دلفی 7 وقتی فایل اجرایی را به رایانه دیگر برای اجرا کپی شد در موقع اجرا درخواست کامپوننتی خاص که در برنامه بکار گرفته شده بود را نمود. حال سوال این است که تا چایی که من میدانم وقتی فایل اجرایی یک برنامه ساخته میشود تمام
کامپوننتهای مورد نیاز برنامه کامپایل و به فایل exe. می چسبد. توضیح اینکه کامپوننت مورد
اشاره برنامه مستقلی(exe) که فرضا از درون این برنامه فراخوانی گردد نیست. لطفا راهنمایی نمائید. متشکرم
hojjatcroos
شنبه 10 اسفند 1387, 09:29 صبح
آیا کامپوننت شما ریجستر است.
khoshblagh
شنبه 10 اسفند 1387, 10:23 صبح
با تشکر از عنایت شما
خیر ریجستر نمیباشد.
Batman
شنبه 10 اسفند 1387, 11:10 صبح
با تشکر از عنایت شما
خیر ریجستر نمیباشد.
خوب دليلش واضحه ديگه.بايد نسخه رجيستر شده اش رو گير بياوريد.
khoshblagh
یک شنبه 11 اسفند 1387, 07:12 صبح
یعنی بدون نسخه ریجستر شده امکان اجرا وجود ندارد؟ زیرا برنامه هایی را دیدم که به همین وضعیت یعنی نسخه بدون ریجستر ساخته شده و بدون نصب دلفی و البته بدون کامپوننت به روی رایانه دیگر اجرا شده است .
shervin farzin
یک شنبه 11 اسفند 1387, 13:14 عصر
سلام
یعنی بدون نسخه ریجستر شده امکان اجرا وجود ندارد؟
اين به مرام طراحان كامپوننت بستگي داره . در بعضي موارد وقتي يك كامپوننت رجيستر نشده
رو نصب كنيد فقط در زمان طراحي يا موقعي كه دلفي رو تازه باز ميكنيد يه پيغام كوچيكي ميده و
به فايل EXE هيچ كاري نداره ، بعضي ديگه موقع اجراء فايل EXE يه پيام كوچيك مبني بر نام
كمپاني يا سازندگان كامپوننت نمايش داده ميشه و مشكل ديگه اي نداره ، يه مدلش هم ايني كه
شما باهاش برخورد كرديد . حالا يا بايد رجيسترش كنيد يا كرك براش پيدا كنيد يا از يك كامپوننت
با كارايي مشابه ولي آزاد استفاده كنيد .
موفق باشيد .
khoshblagh
دوشنبه 12 اسفند 1387, 08:21 صبح
سلام
. حالا يا بايد رجيسترش كنيد يا كرك براش پيدا كنيد يا از يك كامپوننت
با كارايي مشابه ولي آزاد استفاده كنيد .
موفق باشيد .
در حقیقت من از نسخه کرک آن استفاده کردم . ولی یکی از دوستان اینطور راهنمایی کرد که باید موقع کامپایل برنامه گزینه run time را غیرفعال نمود. متشکرم
shervin farzin
دوشنبه 12 اسفند 1387, 13:03 عصر
سلام
خوب اگر منظورتون گزينه Build With Runtime Packages هست ، كه شما انتخابش كرديد ، بايد
عرض كنم با انتخاب اين گزينه شما از دلفي خواستيد تا اطلاعات مورد نياز پروژتون رو از داخل
بسته هاي ارائه شده ، در زمان كامپايل وارد كد فايل EXE نكنه چون (به عنوان مثال) ميدونيد كه
اين بسته ها به طور كامل در سيستم مقصد وجود دارند .
پيشنهاد ميكنم تيك اين گزينه رو برداريد و مجددا امتحان كنيد .
موفق باشيد.
khoshblagh
چهارشنبه 14 اسفند 1387, 12:07 عصر
با تشکر از جناب shervin farzin
سلام
خوب اگر منظورتون گزينه Build With Runtime Packages هست ، كه شما انتخابش كرديد ، بايد
عرض كنم با انتخاب اين گزينه شما از دلفي خواستيد تا اطلاعات مورد نياز پروژتون رو از داخل
بسته هاي ارائه شده ، در زمان كامپايل وارد كد فايل EXE نكنه چون (به عنوان مثال) ميدونيد كه اين بسته ها به طور كامل در سيستم مقصد وجود دارند .
.
تصور من از فایل EXE این است که در موقع ساخته شدن تمام کامپوننتهای مورد نیاز برنامه همراه آن کامپایل شده و در نتیجه نیازی به کامپوننتهای استفاده شده در برنامه نداشته باشد. آیا این تصور غلط است ؟
از طرف دیگر با انتخاب گزینه Build With Runtime Packages معنی آن این است که احتمالا یکبار دیگر در در رایانه مقصد با بکار گیری کامپوننتهای مورد نیاز دوباره فایل EXE ساخته شود. اگر این وضعیت درست است آیا فایل جدید ساخته شده دیگر نیازی به کامپوننتها ندارد یا اینکه با هر بار اجرای برنامه فایلEXE دوباره به کامپوننتها مراجعه میکند. با تشکر
vcldeveloper
چهارشنبه 14 اسفند 1387, 23:59 عصر
تصور من از فایل EXE این است که در موقع ساخته شدن تمام کامپوننتهای مورد نیاز برنامه همراه آن کامپایل شده و در نتیجه نیازی به کامپوننتهای استفاده شده در برنامه نداشته باشد. آیا این تصور غلط است ؟
از طرف دیگر با انتخاب گزینه Build With Runtime Packages معنی آن این است که احتمالا یکبار دیگر در در رایانه مقصد با بکار گیری کامپوننتهای مورد نیاز دوباره فایل EXE ساخته شود. اگر این وضعیت درست است آیا فایل جدید ساخته شده دیگر نیازی به کامپوننتها ندارد یا اینکه با هر بار اجرای برنامه فایلEXE دوباره به کامپوننتها مراجعه میکند
دلفی بطور پیش فرض تمام کدهای استفاده شده در برنامه را به فایل EXE لینک می کند، و یک فایل EXE به اصطلاح Stand-alone تولید می کند؛ یعنی فایل EXE به فایل دیگه ایی برای اجرا وابسته نخواهد بود.
وقتی گزینه Build with runtime packages را فعال می کنید، به دلفی می گویید که بجای عمل پیش فرض، کدهای موجود در Packageهای استفاده شده را به فایل EXE لینک نکند، در نتیجه حجم فایل EXE کاهش پیدا می کند، اما برنامه نویس باید فایل مربوط به تمامی Packageهای استفاده شده را که اسمشان در کادر زیر گزینه Build with runtime packages درج شده، به همراه برنامه به سیستم مقصد منتقل کند، وگرنه برنامه کار نخواهد کرد.
khoshblagh
پنج شنبه 15 اسفند 1387, 07:20 صبح
با سلام خدمت جناب آقای کشاورز
در رابطه با فایلهایی که برنامه نویس باید به همراه فایل اجرایی باید به رایانه مورد نظر
انتقال دهد اینطور به نظر میرسد که حتی بعضی Package های استفاده نشده در برنامه
هم در کادر مورد نظر موجود میباشد. برای مثال من در برنامه از RAVE استفاده نمیکنم
ولی در کادر گفته شده موجود میباشد. در حالیکه به نظر میرسد فقط اسم Package های
مورد استفاده در برنامه باید در کادر موجود باشد.لطفا راهنمایی فرمائید. متشکرم
[quote=وقتی گزینه Build with runtime packages را فعال می کنید، به دلفی می گویید که بجای عمل پیش فرض، کدهای موجود در Packageهای استفاده شده را به فایل EXE لینک نکند، در نتیجه حجم فایل EXE کاهش پیدا می کند، اما برنامه نویس باید فایل مربوط به تمامی Packageهای استفاده شده را که اسمشان در کادر زیر گزینه Build with runtime packages درج شده، به همراه برنامه به سیستم مقصد منتقل کند، وگرنه برنامه کار نخواهد کرد.[/quote]
vcldeveloper
پنج شنبه 15 اسفند 1387, 12:49 عصر
در رابطه با فایلهایی که برنامه نویس باید به همراه فایل اجرایی باید به رایانه مورد نظر
انتقال دهد اینطور به نظر میرسد که حتی بعضی Package های استفاده نشده در برنامه
هم در کادر مورد نظر موجود میباشد. برای مثال من در برنامه از RAVE استفاده نمیکنم
ولی در کادر گفته شده موجود میباشد.
اون کادر قابل ویرایش هست، و می تونید خودتون محتوای آن را ویرایش کنید. در ضمن، اگر اسم Packageایی در آن کادر وجود داشته باشد، ولی در برنامه از آن استفاده نشده باشد، نیازی به انتقال آن به سیستم مقصد نیست.
برای اینکه ببینید چه Packageهایی باید با برنامه منتقل بشوند، یک بار برنامه را Build کنید، سپس از منوی Project گزینه Information for project را انتخاب کنید، تا لیست Packageهای استفاده شده در برنامه نمایش داده شود.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.