سلام خدمت همه ی دوستان و اساتید
تو این تاپیک در مورد یکی از بحث هایی که تو یکی از تاپیک های دیگه به وجود اومد بحث میکنیم.
https://barnamenevis.org/showthread.p...76#post1802376
سلام خدمت همه ی دوستان و اساتید
تو این تاپیک در مورد یکی از بحث هایی که تو یکی از تاپیک های دیگه به وجود اومد بحث میکنیم.
https://barnamenevis.org/showthread.p...76#post1802376
خیلی خب.
فرض کنین میخواییم یه نرم افزار بنویسیم که عکس های سیستم رو تو یه ftp آپلود کنه.این کار رو, هم میشه با api انجام داد وهم بدون اون.
اگر بخواییم ویروس تو linux هم کار کنه api رو باید بزاریم کنار واز راه های دیگه استفاده کنیم.
به ویروسی که اینجوری نوشته بشه میگن ویروس بدون وابستگی.
و همین باعث میشه تعداد خطوط خیلی خیلی زیاد بشه.
واز عهده ی یه نفر خارجه.
سلام.
ابدا !!
به این برنامه نویسی می گن کراس پلتفرم. که اتفاقا در دلفی با برنامه نویسی Kylix به راحتی قابل انجامه.
تقریبا به همون راحتی برنامه نویسی معمولی.
فایل های exe استاندارد برای سیستم های مختلف دارای استانداردی به نام PE هستند که با دونستن اون می تونید تقریبا همه کاری کنید.
کد نویسی برنامه های کراس پلتفرم هم اصلا خیلی خیلی زیاد نیست. کافیه از توابع غیر مشترک دوبار پیاده سازی کنید.
نمونه کدش رو ببینید:
function _GetMem(Size: Integer): Pointer;
{$IF Defined(DEBUG) and Defined(LINUX)}
var
Signature: PLongInt;
{$IFEND}
begin
if Size > 0 then
begin
{$IF Defined(DEBUG) and Defined(LINUX)}
Signature := PLongInt(MemoryManager.GetMem(Size + 4));
if Signature = nil then
Error(reOutOfMemory);
Signature^ := 0;
Result := Pointer(LongInt(Signature) + 4);
{$ELSE}
Result := MemoryManager.GetMem(Size);
if Result = nil then
Error(reOutOfMemory);
{$IFEND}
end
else
Result := nil;
end;
البته این نمونه صرفا برای آشنایی بود و ایضا تحت سیستم عامل های متفاوت در هنگام "کامپایل" ورژن های متفاوت تولید می شه.
شما می تونی کامپایلر لایت زبان مورد نظر رو در برنامه اجرایی ویروس Embed کنی تا بتونی هر قری می خوای بدی!
شما شخصا چه ویروسی دیدی که یک نسخه واحدش روی دو پلتفرم متفاوت ران بشه؟
توابع تبدیل تاریخ با دقت 5000 سال
پذیرش پروژه، کامپوننت، آموزش برنامه نویسی (دلفی، اس کیو ال، ..) -> 09123780840
پایگاه داده، تیونینگ، طراحی و پیاده سازی ..
تا اونجایی که من میدونم و تحقیق کردم کراس پلتفرم نیست.
احتمالا منظور من رو اشتباه متوجه شدین.
فرضا یه تابعی بنویسین که بدون وابستگی به سیستم عامل.یه فایل رو آپلود کنه.
چه تو mac چه تو linux چه تو ویندوز
برای مثال میگم.
یه راحش اینه به اسمبلی بنویسیم.
بدون استفاده از سیستم عامل هیچ کاری نمی تونی بکنی
همه از توابع سیستم عامل استفاده می کنن
می تونی ی کد بدی که با اسمبل حافظه بگیره یا همون ارسال فایل
![]()
بنده اینجا نیومدم کد های اسمبلی شما رو بنویسم.
یه سرچ کن تو نت پیدا میکنی.
درضمن لطف کن بخون ببین چی نوشتم.
نوشتن اینجور برنامه ها از عهده ی یه نفر خارجه
من ویرویس نویس نیستم
ولی اونقدری سواد دارم ک به فهمم ی برنامه چیه و سیستم عامل این وسط چی کار می کنه
شما می گی بدون استفاده از API سیستم عامل
بدون اینا می تونی ی بایت فضا بگیری
این کارو بکن ارسال فایل باشه برا بعد
شما برین نحوه ی درست شدن سیستم عامل رو مطالعه کنین.
این کارم یاد میگیرین.
X-Platform یا X-OS برنامه ای که وابسته به سیستم عامل خاصی نباشد که مثلا با جاوا می شه این کار رو کرد. با دلفی می شه در حال حاضر روی ویندوز - لینوکس - مک برنامه نوشت و در ورژن بعدی که سال دیگه میاد قول آندروید هم داده شده.فرضا یه تابعی بنویسین که بدون وابستگی به سیستم عامل.یه فایل رو آپلود کنه.
چه تو mac چه تو linux چه تو ویندوز
البته بدون API هم می شه کارهایی کرد. مثلا در سطح کرنل با Interrupt ها.شما می گی بدون استفاده از API سیستم عامل
بدون اینا می تونی ی بایت فضا بگیری
خود ویندوز رو با چی نوشتن؟ اگر قرار بود نشه بدون API هاش کاری کرد.
نوشتن برنامه ای که بدون توجه به سیستم عامل فایلی رو آپلود کنه هم خیلی کار شاقی نیست. البته باز هم می گم، در هنگام کامپایل ماجرا عوض می شه.
دوست من، هنوز منتظر اسم یک ویروس X-Plat یا حتی اسم یک مازول اون ویروس معروف هستم تا ببینم به چی می گی خوف و خفن D:
برنامه هایی که بدون نیاز به کامپایل مجدد روی چندین پلتفرم اجرا می شن، به احتمال خیلی زیاد (نمی گم صد در صد شاید اطلاعاتم ناقص باشه) نیاز به یک VirtualMachine روی سیستم مقصد دارند.
اصلا برای همین که شما نتونی با جاوا کارهای خطری کنی (دلیلش اینه که روی همه سیستم عامل ها ویرچوال ماشین داره) اومدن پوینتر ها رو توش از اختیار برنامه نویس خارج کردن.
توابع تبدیل تاریخ با دقت 5000 سال
پذیرش پروژه، کامپوننت، آموزش برنامه نویسی (دلفی، اس کیو ال، ..) -> 09123780840
پایگاه داده، تیونینگ، طراحی و پیاده سازی ..
اینجا اینم در نظر بگیرین که کی داره برنامه مینیویسه
تازه اونم به اسمبلی که دیگه....
من مثال زدم و اگر مثال شاخ میخواین باید بگم پیدا میشه ولی من نمیدونم.
در مورد اون ویروس خفن
باید بگم تو youtube یه هم چین چیزی دیدم.
اگر پیداش کردم آپ میکنم لینکشو میزارم.
اگرم نشد یکی دیگه پیدا میکنم.