قفل گذاري روي فايلهاي فلاش

NabiKAZ

Well-Known Member
سلام
من ميخوام واسه فايلي كه با فلاش ساخته شده مثلا توسط وي بي قفل بزارم
چه راهي پيشنهاد ميكنيد كه مثلا در صورتي كه كاربر پسوردش رو وارد كرد swf مورد نظر اجرا بشه ، در غير اين صورت اجرا نشه . از طرفي خود فايل فلاش هم نبايد توسط كاربر قابل اجرا باشه .
راهي كه به نظرم رسيد اين بود كه ويژوال بيسيك يه كليد به فايل فلاش ارسال كنه و فلاش در صورت درست بودن اون كليد، play بشه در غير اين صورت stop بشه. به نظر شما اين راه منطقيه؟ يا راه بهتري سراغ داريد؟

ممنون
نبي
 

mmr

Member
راستش من وی بی و ویژوال بیسیک بلد نیستم ولی شما می تونید
همون پسورد رو با فلش درست کنید خیلی هم
آسونه !!!!! مثلا اگه username و password درست بود بره به یه
فریم و اگه درست نبود پیغام بده !!!!!

مصطفی
 

NabiKAZ

Well-Known Member
سلام آقا مصطفی!
حق با شماست. اما مشکلی که وجود داره اینه که در اینجور قفل گذاری نیازه که ابتدا سریالهای سخت افزاری بر رسی بشوند و در مواقعی نیازه که تغییراتی در رجستری دستگاه داده شود که از توان فلاش خارج است .
و باید از زبان های برنامه نویسی استفاده کرد.

مجدد از دوستان خواهش دارم اگر راهی که ارائه دادم عملیه بیشتر توضیح بدهند

تشکر
نبی
 
آخرین ویرایش:

amir_s

Active Member
ميتونيد اول فلشتون يه استوپ بذاريد و فريم بعدي رو هم يه اكشن prevFrame بذاريد تا مطمئن بشيد كه كاربر نميتونه اون رو ببينه ... بعد با استفاده از كامپوننت فلش توي ويژوال بيسيك يه متغيير توي فلش ست كنيد و بعد توي فلش اون رو تست كنيد ...
 

NabiKAZ

Well-Known Member
سلام
روش شما (امیر) تقریبا همون چیزیه که بالا گفتم و به ذهن خودم هم رسیده بود. فقط به مشکلی برخوردم . و اینکه من بجای متغییر از یه تکست باکس استفاده کردم و وقتی که بهش مقدار ارسال میکردم . نمیتونستم اون رو یا دستور if مقایسه کنم . هر کاری کردم نشد. البته موضوع به نظر ساده میاد ولی از اونجا که من با اکشن اسکریپت ها کم کار کردم به مشکل برخوردم. آیا امکان داره یه فلاش ساده از طرحی که ارایه دادید برای من ارسال کنید؟ البته اگر وقتتون رو نمیگیرد.

باتشکر
نبی
 
آخرین ویرایش:

NabiKAZ

Well-Known Member
سلام
با کمک آقا امیر مشکلم رو یه جورایی حل کردم .
حالا میشه بگید که تکست باکسم رو که Var اون یه مقدار داره رو ، چجوری میشه پنهان کرد که اصلا کاربر بهش دسترسی نداشته باشه . چون من مقدار کلیدی رو توسط ویژوال بیسیک توی اون میزارم و بعد اون تکست باکس رو چک میکنم ! که اگر کاربر اونو ببینه ، لو میره.

ممنون
نبی
 

mmr

Member
NabiKAZ گفت:
سلام
با کمک آقا امیر مشکلم رو یه جورایی حل کردم .
حالا میشه بگید که تکست باکسم رو که Var اون یه مقدار داره رو ، چجوری میشه پنهان کرد که اصلا کاربر بهش دسترسی نداشته باشه . چون من مقدار کلیدی رو توسط ویژوال بیسیک توی اون میزارم و بعد اون تکست باکس رو چک میکنم ! که اگر کاربر اونو ببینه ، لو میره.

ممنون
نبی

بهترین راه اینه که اون textbox رو بیرون صفحه قرار بدید و
visible رو هم false کنید ..... برای محکم کاری می تونید selectable رو هم false کنید ..
کد:
_root.textboxname.variable=false

کد:
_root.textboxname.selectable=false

مصطفی
 
آخرین ویرایش:

amir_s

Active Member
خوب احتياجي به اين كار نيست .... توي خود فلش يه متغير ايجاد كنيد ... و بعد با ويژوال بيسيك مقدار دهيش كنيد ...
 

NabiKAZ

Well-Known Member
http://forum.majidonline.com/newreply.php?do=newreply&p=251620
mmr گفت:
بهترین راه اینه که اون textbox رو بیرون صفحه قرار بدید و
visible رو هم false کنید ..... برای محکم کاری می تونید selectable رو هم false کنید ..
کد:
_root.textboxname.variable=false

کد:
_root.textboxname.selectable=false

مصطفی


اي ول!
اينجور كه امتحان كردم اولي نميزاره مقدار تكست باكس تغيير كنه. دومي هم كه نميزاره انتخاب بشه!
حسابي محكم شد.

حالا با اين برنامه هايي كه فلاش رو سورس ميكنن چيكار بايد كرد؟ آيا اكشن اسكريژت ها هم ميتونن در بيارن ، مثلا اون كليدي كه من استفاده ميكنم براي play شدن ....
يه راه كاملا مطمئن هست كه آدم خيالش راحت باشه ؟

نبي
 

NabiKAZ

Well-Known Member
http://forum.majidonline.com/newreply.php?do=newreply&p=251810
amir_s گفت:
خوب احتياجي به اين كار نيست .... توي خود فلش يه متغير ايجاد كنيد ... و بعد با ويژوال بيسيك مقدار دهيش كنيد ...

چطوري؟
منظورت اينجوريه؟
var mytext
فكر كردم نميشه!
آخه قبل از اينكه متغيير با اين دستور توليد بشه ، ما مقدار رو توسط ويژوال بيسيك ارسال كرديم!! و به نظر عملي نمياد! اما الان تست كردم و ديدم جواب داد ! با اين حساب فكر ميكنم بهتر باشه از متغيير استفاده بشه تا تكست باكس.

تشكر
نبي
 

NabiKAZ

Well-Known Member
سلام
خوب خوبه كه يه جمع بندي از صحبتهاي دوستان بكنم .

فايل فلاش به اين شكل ميشه كه:
فريم 1 :
کد:
stop();

فريم 2 :
کد:
prevFrame();

فريم 10:
داشتيم به اين نتيجه ميرسيديم كه يه تكست باكس كه مثلا instanse اون mytext2 باشه و var اون باشه mytext و اينجوري عمل كنيم :
کد:
_root.mytext2._visible=false;
_root.mytext2.variable=false;
_root.mytext2.selectable=false;
if (mytext == "nabi") {
	nextFrame();
	play();
}else {
	gotoAndPlay(1);
}

اما گفته شد كه نيازي به اين كار نيست و ميشه از همون متغيير معمولي فلاش هم استفاده كرد كه نهايتاْ فريم 10 اينجوري تصحيح شد:
کد:
var mytext;
if (mytext == "nabi") {
	nextFrame();
	play();
}else {
	gotoAndPlay(1);
}

فريم 11 و بعد از اون هم فريم هاي معمولي فايل ما هستند.

از طرفي در ويژوال بيسيك:
کد:
ShockwaveFlash1.Movie = App.Path & "\file3.swf"
ShockwaveFlash1.SetVariable "mytext", "nabi"
ShockwaveFlash1.GotoFrame 8
ShockwaveFlash1.Play

البته فكر ميكنم چون در ويژوال بيسيك فريم ها از صفر در نظر گرفته ميشه و ما بايد به يه فريم قبل از فريم 10 (در فلاش) اشاره كنيم نتيجاْ بايد به فريم 8 (در ويژوال بيسيك) جهش كنيم.

ضمناْ كليد ما در اينجا "nabi" مي باشد.

نظرتون چيه؟
بازم ممنون
نبي
 

Vampire

New Member
میشه یوزر نیم و پسوورد گذاشت..... من خودم 1000 بار این کارو کردم...خیلی آسونه
 

mmr

Member
آفرین آقا نبی !
کار درست رو شما می کنی که تاپیک رو ول نمی کنه !
خوبه آخر هر تاپیک یه جمع بندی باشه !!

فعلا
مصطفی
 

NabiKAZ

Well-Known Member
mmr گفت:
آفرین آقا نبی !
کار درست رو شما می کنی که تاپیک رو ول نمی کنه !
خوبه آخر هر تاپیک یه جمع بندی باشه !!

فعلا
مصطفی

خواهش ميكنم ... كاري نكردم ....

يه چيزي!
مشكلي كه به نظر ميرسه اينه كه هر كسي به سادگي ميتونه با ويژوال بيسيك برنامه اي بنويسه كه به فريم هاي بعد از جايي كه كليد رو چك ميكنه جهش كنه و در واقع از روي چك كليد جهش كنه . چطور ميشه از بروز اين مشكل جلوگيري كرد.
البته راهي كه به نظر ميرسه اينه كه كد چك كردن كليد رو توي تك تك فريم ها بنويسيم كه البته كمي وقت گيره راهي هست كه به فلاش بفهمونيم يه قطعه اسكريپت رو تو تمام فريم ها اجرا كنه .

تشكر
نبي
 

MnavidM

Active Member
NabiKAZ گفت:
خواهش ميكنم ... كاري نكردم ....

يه چيزي!
مشكلي كه به نظر ميرسه اينه كه هر كسي به سادگي ميتونه با ويژوال بيسيك برنامه اي بنويسه كه به فريم هاي بعد از جايي كه كليد رو چك ميكنه جهش كنه و در واقع از روي چك كليد جهش كنه . چطور ميشه از بروز اين مشكل جلوگيري كرد.
البته راهي كه به نظر ميرسه اينه كه كد چك كردن كليد رو توي تك تك فريم ها بنويسيم كه البته كمي وقت گيره راهي هست كه به فلاش بفهمونيم يه قطعه اسكريپت رو تو تمام فريم ها اجرا كنه .

تشكر
نبي
با سلام.

می تونید یه تابع برای این کار بنویسید .

بعد فقط اون رو تو فریم ها فراخونی کنید .

موفق باشید.
نوید.
 

mmr

Member
می تونی یه مووی کلیپ بسازی بعد تو enterframe یه شرص بذاری که اگه شرط درست نبود
بره بهمون فریم اول ....

مصطفی
 

MnavidM

Active Member
mmr گفت:
می تونی یه مووی کلیپ بسازی بعد تو enterframe یه شرص بذاری که اگه شرط درست نبود
بره بهمون فریم اول ....

مصطفی
با سلام.

آخه مسله همین جاست . اون شرط چی باشه ؟

مقدار یه متغیر رو چک کنه ؟ این که همون مشکل قبلی رو داره ....
 

NabiKAZ

Well-Known Member
Doste گفت:
با سلام.

می تونید یه تابع برای این کار بنویسید .

بعد فقط اون رو تو فریم ها فراخونی کنید .

موفق باشید.
نوید.


بلاخره تابع رو هم بايد كپي پست كني تو همه فريم ها .... خب دستوراتش هم ميشه كپي پست كرد. ما ميخوايم از همين كپي پست خلاص بشيم و گرنه يه خط فراخواني فانكشن يا چهار پنج خط برنامه تفاوتي نداره .
 

MnavidM

Active Member
با سلام.

فعلا چيز خاصي به نظرم نميرسه .

در كل هر كاريش كني , چون ميشه سورس فلش (action script) رو ديد , نميشه چيز زياد مطميني درست كرد .

اما اگه چيزي به ذهنم رسيد , ميگم بهت :wink:

موفق باشي.
نويد.
 

جدیدترین ارسال ها

بالا