نقل قول: معرفی فریمورک اپلیکیشن نویسی آزاد و مستقل از پلتفرم Qt
این یک تابع هست که من برای رمزگذاری یک فایل که در حافظه در یک QByteArray ذخیره شده بود نوشتم و تست کردم.
این تابع یک QByteArray و یک پسورد (هشدار: ممکنه با کاراکترهای غیرلاتین کار نکنه؛ تست نکردم) رو میگیره و بعد محتویات QByteArray رو رمز میکنه. یعنی نتیجهء رمزگذاری در همون QByteArray ذخیره میشه و تابع مقدار برگشتی ای نداره.
کلاسی از Crypto++ که برای این تابع استفاده شده کلاس DefaultEncryptorWithMAC هست که از این الگوریتم استفاده میکنه: DES-EDE2 and HMAC/SHA-1
void encrypt(QByteArray &in_out, const char *passPhrase) {
string tmp;
StringSource s((const byte *)in_out.constData(), in_out.size(), true, new DefaultEncryptorWithMAC(passPhrase, new StringSink(tmp)));
in_out.clear();
in_out.append(QByteArray(tmp.c_str(), tmp.size()));
}
برای رمزگشایی شما فقط بجای DefaultEncryptorWithMAC به یک DefaultDecryptorWithMAC نیاز دارید. بنابراین تابع رمزگشایی ما به شکل زیر هست:
void decrypt(QByteArray &in_out, const char *passPhrase) {
string tmp;
StringSource s((const byte *)in_out.constData(), in_out.size(), true, new DefaultDecryptorWithMAC(passPhrase, new StringSink(tmp)));
in_out.clear();
in_out.append(QByteArray(tmp.c_str(), tmp.size()));
}
من دربارهء کتابخانهء Crypto++ کاملا تازه کار هستم (و بطور کلی در مقولهء cryptography ) و رفرنس Crypto++ رو فقط بصورت محدود خوندم برای اینکه بتونم کارم رو راه بندازم. بنابراین ممکنه این کاربرد رو بشه با کد بهتری نوشت که اگر سراغ داشتید اطلاع بدید.
نقل قول: معرفی فریمورک اپلیکیشن نویسی آزاد و مستقل از پلتفرم Qt
eshpilen جان سلام خسته نباشی. واقعا مطالبی جالب و مفیدی رو ارائه کردین. میخواستم بدونم Visual Studio Add-in ای که در پایین سایت http://qt.nokia.com/downloads به طور مختصر درموردش توضیح داده رو اگه دانلود کنم کفایت میکنه؟ میتونیم تمام کارهامونو با اون انجام بدیم؟
Want to use Qt together with Visual Studio on Windows? Download the Visual-Studio add-in, which can be used for development together with all Qt licenses.
qt-vs-addin-1.1.7.exe (57 MB)
یه سری کتابخونه هم در صفحه دانلودش داره که تحت عنوان Qt libraries 4.7.1 for Windows (minGW 4.4, 319 MB) هستش. این رو هم باید دانلود کنیم یا همون Qt SDK for Windows* (322 MB) کفایت میکنه؟
ممنون
نقل قول: معرفی فریمورک اپلیکیشن نویسی آزاد و مستقل از پلتفرم Qt
شرمنده مطمئن نیستم و نسخه های اخیر Qt رو بررسی نکردم که چه تغییراتی کردن.
اما فکر میکنم اون Visual-Studio add-in به تنهایی کافی نیست و فقط باعث میشه بتونی در محیط ویژوال استودیو با کیوت کار کنی. یعنی باید کتابخانه های کیوت یا دیگر اجزاش نصب بشن. حالا اینکه دقیقا چیا و چطوری نمیدونم چون تاحالا دانلود و امتحان نکردم. بنظرم باید دانلود کنی و طبق دستورالعمل هایی که خودش میده و راهنمایی که داره روشن بشه. فکر میکنم بهتر باشه اول SDK خودش رو دانلود و نصب کنی در قدم اول، بعد Visual-Studio add-in رو نصب کنی ببینی چی میشه. احتمالا مسیر نصب کیوت رو میخواد مثلا یا خودش بصورت خودکار پیداش میکنه. اینا همه حدسه البته که امیدوارم درست باشه و کمک کنه.
درمورد libraries و SDK هم SDK رو دانلود کن. SDK کامل هست و خودش شامل کتابخانه ها (libraries) هم میشه. libraries به تنهایی برای سناریوهای خاصی هست که بدرد شما نمیخوره.
راستی نمیدونم وقتی با ویژوال استودیو میخوای کار کنی شاید باید Qt libraries 4.7.1 for Windows (VS 2008, 228 MB) رو دانلود کنی. اگر به مشکل خوردی این گزینه رو بررسی کن.
ببخشید دیگه اطلاعات بیشتر در این زمینه ندارم و اینا همش حدس هست چون خودم تاحالا این جورش رو امتحان نکردم. ضمنا خیلی وقت هم Qt کار نکردم.
راستی میتونی از فروم http://www.qtcentre.org/forum.php هم استفاده کنی برای پرسیدن اینطور سوالات. در تالار مربوطه البته (مربوط به نصب و اینها). البته به زبان انگلیسیه.
نقل قول: معرفی فریمورک اپلیکیشن نویسی آزاد و مستقل از پلتفرم Qt
نقل قول:
نوشته شده توسط
eshpilen
شرمنده مطمئن نیستم و نسخه های اخیر Qt رو بررسی نکردم که چه تغییراتی کردن.
اما فکر میکنم اون Visual-Studio add-in به تنهایی کافی نیست و فقط باعث میشه بتونی در محیط ویژوال استودیو با کیوت کار کنی. یعنی باید کتابخانه های کیوت یا دیگر اجزاش نصب بشن. حالا اینکه دقیقا چیا و چطوری نمیدونم چون تاحالا دانلود و امتحان نکردم. بنظرم باید دانلود کنی و طبق دستورالعمل هایی که خودش میده و راهنمایی که داره روشن بشه. فکر میکنم بهتر باشه اول SDK خودش رو دانلود و نصب کنی در قدم اول، بعد Visual-Studio add-in رو نصب کنی ببینی چی میشه. احتمالا مسیر نصب کیوت رو میخواد مثلا یا خودش بصورت خودکار پیداش میکنه. اینا همه حدسه البته که امیدوارم درست باشه و کمک کنه.
درمورد libraries و SDK هم SDK رو دانلود کن. SDK کامل هست و خودش شامل کتابخانه ها (libraries) هم میشه. libraries به تنهایی برای سناریوهای خاصی هست که بدرد شما نمیخوره.
راستی نمیدونم وقتی با ویژوال استودیو میخوای کار کنی شاید باید
Qt libraries 4.7.1 for Windows (VS 2008, 228 MB) رو دانلود کنی. اگر به مشکل خوردی این گزینه رو بررسی کن.
ببخشید دیگه اطلاعات بیشتر در این زمینه ندارم و اینا همش حدس هست چون خودم تاحالا این جورش رو امتحان نکردم. ضمنا خیلی وقت هم Qt کار نکردم.
راستی میتونی از فروم
http://www.qtcentre.org/forum.php هم استفاده کنی برای پرسیدن اینطور سوالات. در تالار مربوطه البته (مربوط به نصب و اینها). البته به زبان انگلیسیه.
خیلی ممنون
فقط میشه بپرسم چرا دیگه ازش استفاده نمیکنین؟
نقل قول: معرفی فریمورک اپلیکیشن نویسی آزاد و مستقل از پلتفرم Qt
چون پروژهء نرم افزاري خاصي ندارم/نداشتم.
الان درحال يادگيري دات نت هستم.
بنده شغلم درحال حاضر ارتباط مستقيمي با برنامه نويسي نداره، اما خيلي علاقمند به برنامه نويسي هستم و عمدهء فعاليت تخصصي بنده در اين زمينه بوده و هست و براي آينده كم و بيش اين رشته رو درنظر دارم.
چون ديدم براي اينكه بتوني هر برنامه اي رو براي هر نيازي در هر محيطي بنويسي نياز به يادگيري چند زبان و فريمورك داري، رفتم دنبال يادگيري زبانها و فريمورك هاي مختلف در حيطه هاي مختلف (يعني هم وب و هم دسكتاپ). ضمنا يكي از دلايل هم اعتقاد و علاقمندي زياد به فلسفه و مزايا و آزادي نرم افزارهاي آزاد و بازمتن كه گنو/لينوكس هم جزيي از اونهاست بود كه دنبال زبانها و ابزارهاي آزاد/بازمتن رفتم. ميدونيد كه Qt بازمتن هست و يكي از فريمورك هاي اصلي برنامه نويسي اپليكيشن در گنو/لينوكس هست.
بعدا پروژه هاي مختلفي درنظر دارم كه ممكنه نياز باشن هركدوم با يك زبان و فريمورك نوشته بشن و شايد از Qt هم در يكي از اونا استفاده كردم. خب بستگي داره چي باشه و كجا بكار بره و چه خواصي مورد نياز باشه. براي هرچيزي يك شرايط و نياز و امكان انتخابهاي مختلفي هست. هيچوقت با يك زبان و فريمورك نميشه همه جا همه كار كرد (حداقل تاحالا كه نشده). حتي با چيزهاي گسترده اي مثل دات نت و جاوا. تمام مسائل كم و بيش نسبي هستن.
نقل قول: معرفی فریمورک اپلیکیشن نویسی آزاد و مستقل از پلتفرم Qt
ضمن تشکر از توضیحاتتون .
و ببخشید که بعد از 3 سال پست میدم :دی
البته فکر کنم اون سایت که معرفی کردید دیگه برای دانلود Qt معتبر نباشه درسته ؟من یه جستجو کردم به سایت qt-project.org برخوردم و از اون الان دارم ورژن 5.1 رو دانلود میکنم((Qt 5.1.0 for Windows 64-bit (VS 2012, OpenGL, 522 MB)) با حجم 600 mb
مسیر رو درست رفتم؟
من تازه میخوام برم سمت Qt اطلاعاتم کمه توی این زمینه ممنون میشم یه توضیح بدید مثلا اونجا که زده vs 21012 منظورش چی بوده؟یعنی تحت محیط ویژوال استدیو از Qt استفاده میکنه؟
بازم تشکر از دوست خوبم eshpilen برای توضیحات خوبشون
نقل قول: معرفی فریمورک اپلیکیشن نویسی آزاد و مستقل از پلتفرم Qt
نقل قول:
نوشته شده توسط
hamidhws
ضمن تشکر از توضیحاتتون .
و ببخشید که بعد از 3 سال پست میدم :دی
البته فکر کنم اون سایت که معرفی کردید دیگه برای دانلود Qt معتبر نباشه درسته ؟من یه جستجو کردم به سایت qt-project.org برخوردم و از اون الان دارم ورژن 5.1 رو دانلود میکنم((Qt 5.1.0 for Windows 64-bit (VS 2012, OpenGL, 522 MB)) با حجم 600 mb
مسیر رو درست رفتم؟
من تازه میخوام برم سمت Qt اطلاعاتم کمه توی این زمینه ممنون میشم یه توضیح بدید مثلا اونجا که زده vs 21012 منظورش چی بوده؟یعنی تحت محیط ویژوال استدیو از Qt استفاده میکنه؟
بازم تشکر از دوست خوبم eshpilen برای توضیحات خوبشون
اره سایتو درست رفتی
یعنی از کامپایلر ویژوال استودیو برای ساختن برنامه استفاده می کنه اگر این ورژنو گرفتی باید visual studio 2012 هم روی سیسستمت نصب باشه