PDA

View Full Version : جلوگیری از استفاده از dll



abi_sarab
پنج شنبه 10 بهمن 1387, 09:50 صبح
سلام!
خوبید؟
چه طور می شه که ما کاری کنیم که کسی نتونه از فایل dll ما استفاده کنه؟

eyes_shut_number1
پنج شنبه 10 بهمن 1387, 18:12 عصر
خوب بذارید استفاده کنند!
شما کد هاتون مخفی هست!
دیگه چه نگرانی دارید؟

Chabok
پنج شنبه 10 بهمن 1387, 18:34 عصر
خوب بذارید استفاده کنند!
شما کد هاتون مخفی هست!
دیگه چه نگرانی دارید؟
با سلام . این دوست ما حتما دلیلی واسه خودشون دارن که میخوان کسی استفاده نکنه .
در ضمن این کار یه ضد حال تمیز به سارق میزنه :لبخند:

شما میتونید در سازنده کلاس کامپوننت خود مثلا مقداری دریافت کنید . اگر با الگوی مورد نظر مطابقت نداشت SelfDispose کنید . یعنی خودتون رو بپکونید :لبخند:

منظورم اینه که باید بین برنامه خودتون و کامپوننت رابطه برقرار کنید و مقادیری ارسال و دریافت کنید . و در صورتی که تشخیص داده شد برنامه مال خودتون نیست کامپوننت کار نکنه .

موفق باشید .

mostafaaa
جمعه 11 بهمن 1387, 22:02 عصر
سلام دوست من
این کلاس کوچیک رو ببین :

Public Class MyControl
Inherits UserControl
Sub New()
Me.BackColor = Color.Red
End Sub
Private Sub MyControl_Invalidated(ByVal sender As Object, ByVal e As System.Windows.Forms.InvalidateEventArgs) Handles Me.Invalidated
Dim S As String = InputBox("Enter Serial : ", "Serial number ")
If Not S = "eiman" Then MyBase.Dispose()
End Sub
End Class


البته این راه حل نیست !! بلکه نشون دادن یکی از روشهای انجام این کاره !
برای تست این کلاس هم کافی یه آیتم کلاس به پروژت اضافه کنی و این کد رو توش Past کنی ، بعد یه بار پروژت رو Build کن و بدش از توی ToolBox اون رو بکش روی فرمت ، وقتی که پروژت رو Run کنی خواهی دید که برای استفاده از این به اصطلاح کنترل باید پسوردش رو داشته باشی و اگه نه ، کنترل نابود میشه، همونطور که دوستمون هم اشاره کردن.
یا علی

محمد زارع
سه شنبه 11 فروردین 1388, 11:53 صبح
سلام

حالا اگه توی dll چند تا فایل بود و ما نخواهیم که این فایلهاتوسط برنامه دیگری استفاده و دیده بشه باید چه کنیم؟ چه راهی به ذهنتون می رسه.

ممنون می شم راهنمایی کنید
زارع

mithridates
سه شنبه 11 فروردین 1388, 15:11 عصر
کافیه به فانکیشن init بگذارید که یه پسورد رو از برنامه شما بگیره بعد اجازه کار کردن بده

من با دلفی مینویسم شما تبدیل کنید




var inited:boolean=false;

function Worker;
begin
if not inited then exit;
MessageBox(0,'wow', 'wow', 0);
end;

procedure init(pw:integer);
begin
if pw=7777 then inited := true;
end;

محمد زارع
سه شنبه 11 فروردین 1388, 15:52 عصر
من با دلفی مینویسم شما تبدیل کنید



سلام
از دوستان کسی هست که کد وی بی دات نت اون رو بده؟

ممنون از همگی
زارع

mithridates
سه شنبه 11 فروردین 1388, 16:08 عصر
دوست عزیز اگه دقت کنی ساده هستالگوریتم:1- تعریف یک متغیر بصورت عمومی با مقدار FALSE2- نوشتن یک فانکشن برای چک کردن پسورد3- اگه پسورد درست بود مقدار FALSE به TRUE تبدیل شود4- در تمامی فانکشن های برنامه مقدار رو چک کن اگه TRUE بود اون قسمت از کدت اجرا بشهحالا کسی هم تبدیل بزنه برات که چه بهتر ولی خودتم اگه دقت کنی مینویسی

abi_sarab
شنبه 15 فروردین 1388, 14:03 عصر
خوب نشد که!
کسی می تونه کد ایشون رو به وی بی بنویسه؟ من که نوشتم نشد.