ورود

View Full Version : سوال در رابطه با قفل سخت افزاری



sabajamalian
پنج شنبه 04 آذر 1389, 16:41 عصر
سلام و خسته نباشید به همه

من برای قفل کردن نرم افزاری که با دلفی نوشتم، از قفل های سخت افزاری شرکت منشور سیمین دانش استفاده می کنم (tiny dongle)

مشکلی که با این قفل ها دارم اینه که این قفل ها توی نرم افزار TinyHIDManager که برای مدیریت اونهاست و توسط خود منشور سیمین نوشته شده، به خوبی شناخته می شن و config می شن ولــــــــی توی نرم افزار خودم شناسایی نمی شن.

ساده ترین کدی که برای شناسایی اونها توی برنامه ام نوشتم اینه :


Tiny1.initialize := True;
ShowMessage(inttostr(Tiny1.errorcode));

که همیشه errorCode 1 رو چاپ می کنه که به معنی نشناختن قفل هست.

دوستانی که با این قفل کار کردن، ممنون میشم راهنماییم کنند

Sh4DoVV
پنج شنبه 04 آذر 1389, 19:37 عصر
با سلام
دوست عزيز User Key مربوط به قفل رو هم وارد كردين ؟

sabajamalian
یک شنبه 07 آذر 1389, 18:04 عصر
بله ، userkey رو هم قبل از initial کردن قفل دادم. اما باز هم error code 1 بر می گردونه

چیزی که برام جالبه اینه که خود نرم افزار مدیریت قفل، اونو میشناسه ولی از توی دلفی نمی تونم بشناسمش . . .

joker
دوشنبه 08 آذر 1389, 10:56 صبح
آخرین ورژن فایل tiny.ocx را از سایتشون بگیر و مجددا نصبش کن با regsvr32
اونی که روی سی دی میدن مشکل داره ، این بلا سر منم اومده :)
میخواستم نمونه ای که در حال استفاده هست را ضمیمه کنم ولی با این طرح جدید فروم که به شدت ضایع هست و جدیدا هم میگه :"شما نمی توانید ضمیمه ارسال کنید" دیگه نشد :) روی سایتشون باید باشه یا زنگ بزن پشتبانیشون.

sabajamalian
پنج شنبه 11 آذر 1389, 09:41 صبح
خیلی ممنون :لبخندساده:
دقیقا مشکلم همین بود و حل شد.

حالا با یه مشکل جدید مواجه شدم که این بار فکر کنم مشکل از خودم باشه !
مقادیری که توی حافظه قفل وجود دارند رو اون هایی که از نوع wideString هستند رو نمی تونم بخونم.
یعنی مقادیر عددی موجود در قفل رو مثل counter یا MaxNetworkUsers رو می تونم به راحتی با متد getCounter و ... ببینم ولی اون هایی که از نوع wideString هستند مثل SerialNumber و DataPartition رو نمی تونم توی برنامم ببینم. متد GetSerialNumber خالی بر می گردونه.

با تشکر

joker
جمعه 12 آذر 1389, 14:29 عصر
آخر عمری شدیم پشتیبانی منشور سیمین :گیج:



Tiny1.FirstTinyHID('E471531461E96DC22186218FF45CDE AE');
if Tiny1.TinyErrCode <> 0 then
begin
ListBox1.Items.Add( ' Lock Not Found ');
end;

ListBox1.Items.Add( GetSuitableMSG(Tiny1.TinyErrCode));

if Tiny1.TinyErrCode = 0 Then
begin
ListBox1.Items.Add('Serial Lock :'+ Tiny1.GetSerialNumberHID());
if Tiny1.GetSerialNumberHID()<> '2009-8806-2212' then
begin
Application.Terminate;
end;