View Full Version : مرجع حل مشکلات زبان فارسی و سورسهای مربوطه
Ramina
شنبه 21 بهمن 1385, 09:53 صبح
وقتی اینا رو کپی میکنم error میده.دقیقا کجا باید تعریف بشن؟
حامد مصافی
سه شنبه 24 بهمن 1385, 12:02 عصر
سلام
شما چی رو کپی می کنید؟؟
لطفاً مشخص کنید با کدام کد مشکل دارید
sknsphr
سه شنبه 01 اسفند 1385, 10:51 صبح
سلام
من تو یک سیستم انبار تحت DOS وقتی اطلاعات سیستم رو به dbf تبدیل میکنم، code page اش ایران سیستمه و با مبدل می تونم تبدیلش کنم و تو ویندوز ببینم. ولی وقتی یک گزارش رو فایل میکنم نمی دونم code page اش چیه و با مبدل ایران سیستم نمی تونم تو ویندوز ببینم. کسی میتونه کمک کنه؟ یه نمونه از فایلهاش رو هم میذارم.
digi_tal
شنبه 25 فروردین 1386, 19:23 عصر
با عرض سلام خدمت اساتید محترم
می خواستم بدونم میشه وقتی ما یک تکس باکس رو انتخاب می کنیم به طور خود کار زبان صفحه کلید یا همون ویندوز ایکس پی تغییر به فارسی کنه اگه امگان داره برام ایمیل بزنید
shemail.co@gmail.com
ممنون
noorsoft
پنج شنبه 27 اردیبهشت 1386, 06:39 صبح
اینکه خیلی ساده است فقط با دستور Instr شما وجود ممیز را در رشته جستجو می کنی و بعد با توجه به اعداد بعد از ممیز اعشار را به رشته اضافه می کنی
noorsoft
پنج شنبه 27 اردیبهشت 1386, 06:44 صبح
برای تغییر حالت صفحه کلید از APi مربوطه باید استفاده کنی و به ای صورت بنویسی
در Text1_GotFocus باید با KeyboardLeayout زبان صفحه کلید را عوض کنی
perfeshnal
پنج شنبه 27 اردیبهشت 1386, 08:05 صبح
سلام
قبلا زیاد در این مورد بحث شده شما باید برای این کار این کد رو بنویسی
Private Declare Function LoadKeyboardLayout Lib "user32" Alias "LoadKeyboardLayoutA" (ByVal pwszKLID As String, ByVal flags As Long) As Long
Private Sub Text1_Click()
Dim xx As Long
xx = LoadKeyboardLayout("00000429", 1)
End Sub
jafaripur
جمعه 28 اردیبهشت 1386, 01:22 صبح
Function IranDate(d As String)
Dim ifday, ifmonth, ifyear, ifdayofyear
Dim iyear, idayofyear
Dim inumdayofyear
Dim aifmonthdays
aifmonthdays = Array(31, 31, 31, 31, 31, 31, 30, 30, 30, 30, 30, 29)
inumdayofyear = 365
Calendar = vbCalGreg
iyear = Year(d)
idayofyear = DatePart("y", d)
If isleapyear(iyear - 1) Then
inumdayofyear = 366
aifmonthdays(11) = 30
End If
If (idayofyear > 79) Then
ifyear = iyear - 621
ifdayofyear = idayofyear - 79
Else
ifyear = iyear - 622
ifdayofyear = (inumdayofyear - 79) + idayofyear
End If
ifday = ifdayofyear
While (ifday > aifmonthdays(ifmonth))
ifday = ifday - aifmonthdays(ifmonth)
ifmonth = ifmonth + 1
Wend
ifmonth = ifmonth + 1
If Len(ifmonth) = 1 Then ifmonth = "0" & ifmonth
If Len(ifday) = 1 Then ifday = "0" & ifday
IranDate = ifyear & "/" & ifmonth & "/" & ifday
d = IranDate
End Function
'--------------------------------
Function isleapyear(nyear)
isleapyear = (((nyear Mod 4) = 0 And (nyear Mod 100) <> 0) Or (nyear Mod 400) = 0)
End Function
فکر نکنم مشکلی باشه خیلی تست کردم برنامه های خودم رو هم به این صورت نوشتم
طرز استفاده
Text1.Text = irandate(date)
CodeMasterX
جمعه 28 اردیبهشت 1386, 01:31 صبح
دوست من لطفا کد ها رو در تگ های مربوطه قرار بدین تا بشه خوندشون.
بهرنگ نوروزی
یک شنبه 13 خرداد 1386, 07:49 صبح
M-gheibi می تونی کد صفحه کلید رو برام بفرستی
ah90sh
پنج شنبه 17 خرداد 1386, 18:11 عصر
دکمه های MSGBOX را پیدا نکردم بعدش ولی پیدا کردم
RZ_HAFEZ
سه شنبه 29 خرداد 1386, 15:53 عصر
مدیر سایت
m_gheibi
در مورد تبدیل عدد به حروف لطفا توضیح بیشتری بدهید
من این کد را وارد کردم ولی اجرا نمی شود
M-Gheibi
چهارشنبه 30 خرداد 1386, 13:34 عصر
مدیر سایت
m_gheibi
در مورد تبدیل عدد به حروف لطفا توضیح بیشتری بدهید
من این کد را وارد کردم ولی اجرا نمی شود
منظورتون از توضیح، بیان عملکرد خط به خط کدها هست ؟! پیچیده نیست . یکبار بخونید اگر متوجه نشدید بگید کدوم قسمت تا توضیح بدم .
اجرا نمیشود یعنی چه ؟ لطف کنید واضحتر بگید که چه خطایی مشاهده میکنید یا ...
mobin_co
جمعه 08 تیر 1386, 00:04 صبح
این هم یک فانکشن برای کار با تاریخ شمسی
ardvisoor
سه شنبه 19 تیر 1386, 15:32 عصر
سلام
من درباره جستجوی شرح فارسی با VB در SQLServer2005 مشکل دارم من یک Query دارم بصورت زیر
SELECT fldUserNo From tblUserDetails where fldLastName like '%تیموری%' and fldFirstName Like '%قاسم%'
اما وقتی این کد به Sql Server 2005 میره بصورت زیر در میاد
SELECT fldUserNo From tblUserDetails where fldLastName like '%ÊíãæÑí%' and fldFirstName Like '%ÞÇÓã%'
در نتیجه هیچ مقداری رو بر نمی گردونه، برای حروف لاتین و یا در حالت ارتباط با Sql server 2000 مشکلی ندارم اما اینو نمی دونم چکار کنم.
با تشکر
khosronejad
چهارشنبه 03 مرداد 1386, 18:01 عصر
دوستان فونت tahoma برای caption ها اگه انتخاب بشه ی را بصورت دو نقطه دار میزنه در حالیکه همین ی در office درست کارمیکنه . چگونه میتوان از ی فارسی یعنی بدون دو نقطه با فونت Tahoma و برنامه Vb استفاده کرد؟
perfeshnal
چهارشنبه 03 مرداد 1386, 23:15 عصر
سلام
جناب khosronejad اگر جستجو می کردید حتما به جواب می رسیدید. :ناراحت:
در تاپیک زیر آقای بابک زواری فونتی به نام TTahoma گذاشتند که حرف "ی" در اون فونت درسته و همچنین اعداد هم فارسی هستند.
http://barnamenevis.org/forum/showthread.php?t=31116&highlight=Tahoma
golihaghighi
چهارشنبه 10 مرداد 1386, 10:47 صبح
با اجرای کد بالا عبارت "یکصد و پنجاه و شش هزار و چهارصد و هشتاد و نه" در Text1 نمایش داده خواهد شد .
ممنون یکی از مشکلات منو حل کردی
من یک سری فایل صوتی از اعداد دارم میشه با این برنامه ترکیبش کرد تا اعداد رو هم بخونه
حامد مصافی
چهارشنبه 10 مرداد 1386, 12:17 عصر
من یک سری فایل صوتی از اعداد دارم میشه با این برنامه ترکیبش کرد تا اعداد رو هم بخونه
ممنون خواهم شد اگر برای من بفرستید.
Hamed.Masafi@GMail.com
golihaghighi
چهارشنبه 10 مرداد 1386, 13:01 عصر
ممنون خواهم شد اگر برای من بفرستید.
Hamed.Masafi@GMail.com
باید تو آرشیوم بگردم. به محض پیدا شدن می فرستم البته حجمش زیاده با چندتا مسیج میفرستم.
hossein-jam
شنبه 27 مرداد 1386, 14:13 عصر
سلام
یه سوال داشتم که اگه جواب بدید ممنون میشم VB
من برنامه ای رو نوشتم که دو تا فرم داره . بر فرض مثال فرم یک و فرم دو
حالا تو فرم دو یه متغیر تعریف کردیم و درون متغیر یه مقداری وجود داره . میخوام کاری کنم که مقدار موجود درون متقیر فرم دو به یه متقیر دیگه که تو فرم یک وجود داره منتقل بشه . چکار باید بکنم ؟
:ناراحت:
aslan_ir
شنبه 27 مرداد 1386, 19:27 عصر
form1.text1.text=form2.text1.text
alikhalesi
جمعه 02 شهریور 1386, 19:14 عصر
سلام. من یک برنامه وی بی رو به بانک sql وصل کردم و وقتی داده های فارسی رو وارد می کردم همه چی درست بود و فقط داده ها به صورت ؟ می شد. برای حل نوع فیلد رو به nvarchar تغییر دادم این مشکل رفع شد اما وقتی که داده ها رو از طریق برنامم search می کنم هیچ داده ای پیدا نمیکنه( الیته فقط داده های فارسی و با داده های انگلیسی کاری نداره) ممنون میشم جوابمو بدین
mf_engineer
جمعه 09 شهریور 1386, 10:12 صبح
با سلام من از برنامه کدپیج ایران سیستم که اقای غیبی نوشتند استفاده کردم ولی نمی تونم فارسی تایپ کنم واینکه اگه خوب این برنامه رو ببینید می بینید یه جاهاییش یه سری علامت داره که از نظر وی بی ناشناخته است
ممنون میشم کمکم کنید
محمد کریمی ورامین
سه شنبه 03 مهر 1386, 08:32 صبح
دوست عزیز من نمی توانیم تصویر گفته در این قسمت را مشاهده کنم . لطفا مرا راهنمائی کنید
لیلا خیرالهی
چهارشنبه 25 مهر 1386, 23:16 عصر
سلام و خسته نباشید!
بابت کدهای ارسالی ازتون متشکرم و بهتون تبریک می گم به خاطر سایتتون و بهتره بگم مدیریتتون.
من یک مشکل داشتم واسه جستجوی فیلد های فارسی!
من دارم یه برنامه با vb برای آژانس مسکن می نویسم یکی اینکه فیلد های جستجوم خیلی زیاده و نیاز به select های زیادی داره می خواستم بپرسم راهی بجز select نداره؟
محتوای جدول من همش فارسیه اما vb نمی تونه جستجو رو از توی اونا انجام بده همه ی فونت ها رو هم تو vb tahoma و تو sql هم arabic کردم ولی فایده نداره .
اگه کمکم کنید یه دنیا ممنونتون می شم.:لبخندساده::قلب:
بهمنی
پنج شنبه 26 مهر 1386, 10:59 صبح
سلام و خسته نباشید!
بابت کدهای ارسالی ازتون متشکرم و بهتون تبریک می گم به خاطر سایتتون و بهتره بگم مدیریتتون.
من یک مشکل داشتم واسه جستجوی فیلد های فارسی!
من دارم یه برنامه با vb برای آژانس مسکن می نویسم یکی اینکه فیلد های جستجوم خیلی زیاده و نیاز به select های زیادی داره می خواستم بپرسم راهی بجز select نداره؟
محتوای جدول من همش فارسیه اما vb نمی تونه جستجو رو از توی اونا انجام بده همه ی فونت ها رو هم تو vb tahoma و تو sql هم arabic کردم ولی فایده نداره .
اگه کمکم کنید یه دنیا ممنونتون می شم.:لبخندساده::قلب:
1- سرچ کنی! پیدا میکنی
2- نمونه همه درس و مشق های بچه های ICDL و ... توی اغلب تاپیکها ریخته پاشیده است میتونید با سرچ همه رو پیدا کنید.
بهمنی
پنج شنبه 26 مهر 1386, 13:16 عصر
قبل از اینکه این سوال را مطرح کنم، در تاپیکها جستجو کردم، اما به نتیجه دلخواه نرسیدم. لذا این سوال را مطرح میکنم:
بدون این که در Control Panel بخش Regional and Language Settings لبه Advanced گزینه مربوط به برنامههای «غیر یونیکد» را به فارسی تغییر دهیم، میخواهیم برنامهای داشته باشیم، که فقط یک عدد Textbox داشته باشد، که بشود تویش فارسی تایپ کرد، و بعد بتواند به یک دیتابیس (فایل Access) وصل شود، و عین متن تایپ شده را در جدول داخل آن ذخیره کند، به طوری که وقتی خود فایل Access را باز میکنیم هم متن را فارسی بنینیم، نه کاراکترهای عجیب و غریب.
توجه داشته باشید که برنامه قرار است فقط روی ویندوز XP کار کند، و روی ویندوز ۹۸ و ... لازم نیست اصلاً باز بشود! (لذا من دنبال راه حلهای مبتنی بر CodePage نیستم.)
توضیح دیگر آن که بنده اصلا سابقه کار با VB6 ندارم، و این سوال را به نیابت از کس دیگری میپرسم. لذا تا حد امکان ساده توضیح دهید. اگر به کامپوننت یا تکنیکی که برای شما شناخته شدهاست اشاره میکنید، لطف کنید برای من هم لینکی بگذارید که آشنا شوم.
(چیزی که تا الآن به آن پی بردم این است که VB6 کنترلهای پیشفرضش به صورت ANSI هستند و بنابراین احتمالاً راه حل سوال من یا در گروی استفاده از کنترلهای دیگر است، یا در گروی ارتباط مستقیم برنامه با API ویندوز و تعریف کنترلها از آن طریق.)
برای اینکه بتوانید در داخل یک کادر متنی(البته به محض ورود) فارسی تایپ کنید، باید API مربوطه را که در همین تاپیک (صفحات فکر میکنم اول تا دهم) ذکر شده است، در GetFucos بگذارید. دوم شروط استفاده از بانک اطلاعاتی با طول و تفصیل زیاد هستند برای راهنمایی من باید اطلاعات خوبی بهم بدید. سوم اگز با Access ورژنهای بالاتر(مثل2003) کار میکنید، باید از آن فایل مربوطه یک نسخه97 تهیه کنید(از طریق Utility داخل Access) تا موقع باز شدن اجق وجق نبینید. برای ارتباط مناسب هم از انجین مناسب استفاده کنید.(مثلا4.51) چهارم: برای راهنمایی استفاده از API (که فکر میکنم با آن آشنا هستید) یکبار جستجو کنید. از این لینک میتوانید برنامه آموزش 900 API بیابید و حالشو ببرید.
لیلا خیرالهی
جمعه 27 مهر 1386, 01:23 صبح
باسلام این تصاویر به خوبی لود نشده اند اگه میشه یک بار دیگه لودش کنید
این متغیر lt در برنامه چیه و چرا ازش خطا می گیره؟
فونت iransystem رو از کدوم ضمیمه باید دانلود کنم؟
vb تابع xx=loadkey.... رو نمی شناسه اگه می شه یکم داجع بهش توضیح بدین !
lt; یعنی lt=?
ممنون
همانطور که در تصویر مشاهده می کنید این کنترل یک تقویم شمسی در Combobox باز می کند که با کلیک روی هر روز آن تاریخ آن روز را به شما می دهد.
<p align="center">http://hostedpictures.com/uploads/141068f706.gif</p>
کاری از محمد تاجیک
hrj1981
جمعه 27 مهر 1386, 14:30 عصر
با تشکر فراوان از مدیر کل سایت جناب غیبی
اینهم ocx کد تبدیل عدد به حروف برای راحتی برنامه نویسان
http://barnamenevis.org/forum/showthread.php?t=82233
saied_hacker
سه شنبه 01 آبان 1386, 14:04 عصر
سلام
میشه بگید چه طور می تونم یه فونت معرفی کنم؟
هرچه می نویسم چرت و پرت در می اد...
ممنون
mc_laren
سه شنبه 15 آبان 1386, 23:39 عصر
من مشکل فارسی نویسی در وی بی دارم
در ضمن در بقیه نرم افزارهای ویندوز براحتی فارسی می نویسم
و مشکل از سی دی وی بی نیست چون امتحان کردم.
اوبالیت به بو
چهارشنبه 16 آبان 1386, 01:23 صبح
تو این تایپیک من یه سری فونت گذاشتم برو دانلود کن.
http://barnamenevis.org/forum/showthread.php?t=82537
majidrezaei2007
دوشنبه 21 آبان 1386, 02:17 صبح
سلام. اگه میدونید چطوری میشه تو vb نستعلیق تایپ کرد منو راهنمایی کنید . ممنون
majid_fba@yahoo.com
azimtak110
سه شنبه 22 آبان 1386, 17:13 عصر
azimtak110@gmail.com
azimtak110
سه شنبه 22 آبان 1386, 17:16 عصر
دوستان می خوام بدونم کسی در مورد فاکتور چاپ کردن یا در کل طریقه طراحی فاکتور به صورت حرفه ای و زیبا و مهمتر چاپ آن برنامه یا کمکی به من نمی تواند بکند
اگر کسی این کار را انجام بدهد خیلی بزرگواری در حق من کرده و من مدیونش می شوم
اگر درون جی میلم این را قرار بده جواب را کهخیلی خیلی بزرگوار و عزیز هست
فدای همه بچه هابه خصوص آنهای که کمک می کنند به هم نوع خودشان
azimtak110@gmail.com
مهدی ویژوال
چهارشنبه 12 دی 1386, 09:13 صبح
ستاپ اضافه شد دریافت کنید
با سلام و تشکر از زحمت شما
اگه میشه برای من به میلم ارسال کنید
ممنونم
مهدی ویژوال
چهارشنبه 12 دی 1386, 09:22 صبح
دوست عزیز sql server را Remove کن و دروباره نصب کن و در زمان نصب حتما زبان را فارسی (عربی) انتخاب کن
مهدی ویژوال
چهارشنبه 12 دی 1386, 09:56 صبح
سلا به بابک عزیز از کجا بردارم داداش
مهدی ویژوال
چهارشنبه 12 دی 1386, 10:02 صبح
ممنون آقای سیدشریفی از لطف شما
اینم به افتخار آقای سیدشریفی بااین کدمیتونیدیک منوی قابل قبول باتصویر
و رنگ دلخواه و چند تا خرت پرت دیگه بسازید.
سورس ساختن منوهم اینجاست البته اینم بگم که کد برنامه
زیاد بهینه نیست و ممکنه اشکالاتی ریزی هم داشته باشه.
اینم اوپن سورس ما هرکس امکانی اضافه کرد یا باگی گرفت
با ذکر دقیق کار انجام شده و تغییرات صورت گرفته بذاره
همین جا بقیه بردارن.
فقط مشکلات رو برای من PM نزنید چون من تا اینجا آوردم
بقیه رو دوستان زحمتش رو بکشن.
با سلام دوست عزیر من فکر میکنم که الان این سورس که در بالا آمده یا ان ستاپی که قبلا گفتی پاک شده در صئرت امکان انها را برای من ارسال کنید
قبلا از زحمت شما کما تشکر و قدردانی را دارم
bampoori2002@yahoo..com
shahab2025
جمعه 14 دی 1386, 23:11 عصر
سلام
من از vb.net2005 استفاده میکنم ولی نمیتونم کد تبدیل عدد به حروف را که آقای غیبی دادند استفاده کنم . خطایی در مورد توابع Right و Leftمیده. ممنون میشم کمکم کنید
mobin_co
دوشنبه 01 بهمن 1386, 16:39 عصر
من مشکل فارسی نویسی در وی بی دارم
در ضمن در بقیه نرم افزارهای ویندوز براحتی فارسی می نویسم
و مشکل از سی دی وی بی نیست چون امتحان کردم.
توی ویژوال در منوی Tools گزینه Options و Tab{Editor Format} در قسمت Font گزینه Courier New(Arabic) رو انتخاب کنید.
علی خدایاری
جمعه 05 بهمن 1386, 23:54 عصر
:بامزه:این هم یک جور کد دیگه برای نوشتن عدد به حروف
chashmak
چهارشنبه 10 بهمن 1386, 20:10 عصر
لطفا کمکم کنید واجبه کسی میدونه در فرم ویژال بیسیک چطوری میتونم فایل pdf رو نشون بدم یا در فرم قرار بدم بهتر بگم نشون بدم
perfeshnal
چهارشنبه 10 بهمن 1386, 21:13 عصر
شما در سایت جستجو کردید و به جواب نرسیدید !!
یک جستجو انجام بدید قبلا جواب داده شده
golabam
جمعه 12 بهمن 1386, 23:05 عصر
با سلام خدمت اساتید من یه برنامه دارم که در قسمت جستجو اسم اگر اولین حرف کاف یا گاف باشه نمیتونه پیدا کنه ولی با حروف دیگه مشکل نداره در ضمن از دستور سلکت استفاده کردم راهنمائی کنید ممنونم
perfeshnal
شنبه 13 بهمن 1386, 07:40 صبح
دوست عزیز من در پست بالایی به دوست دیگمون گفتم در سایت جستجو کن به شما هم باید همین رو بگم
اینقدر نمونه برنامه در سایت در مورد جستجو هست که حد نداره
golabam
سه شنبه 16 بهمن 1386, 08:12 صبح
آقا من همه جا را گشتم راه حل هارا خواندم ولی مشکل حل نشد من چند تا برنامه دیگه از جمله برنامه سازمان تامین اجتماعی را دارام که تحت وی بی هستش و جستجوش خوب کار میکنه نمودنم مشکل ما از کجاست
bobrus
سه شنبه 16 بهمن 1386, 10:57 صبح
مشکل شما تو ویندوزه نه ویژوال بیسیک تو شاخه system32 یه فایل هست به نام kbdfa.dll که وضیفش فارسی نوشتنه و توش حروف گژپچ تعریف نشده نسخه درستش رو واستون آپلود می کنم طبق فایل راهنما عمل کنید درست میشه:متفکر:
asadegha
شنبه 04 اسفند 1386, 20:30 عصر
سلام خدمت اساتید محترم.
چطور میشه دو جدول از دو پایگاه داده اکسس مجزا رو با هم ادغام کرد، البته هر دو جدول از پایگاه دقیقا یکسان هستند -از نظر نوع ، تعداد و حتی نام فیلد ها- می خوام تو یه دیتا گرید نمایش بدم البته در صورت نیاز کاربر با دستورات sql فیلتر میشن.
خیلی عجله دارم. اگه لطف کنین کمکم کنین ممنون میشم.
Tiro Pro
چهارشنبه 15 اسفند 1386, 12:53 عصر
از تمام دوستانی که مرا در امر فارسی نویسی در vb کمک کردند و از مدیریت این تاپیک جالب کمال سپاس را دارم.2S
ata.royalfalcon
پنج شنبه 23 اسفند 1386, 17:55 عصر
دوستان سلام
با عرض پوزش از اساتید
یه کنترل تاریخ شمسی که خودم نوشتم براتون گذاشتم
تاریخ جاری سیستم رو به شمسی نشون میده ،البته خیلی ساده هستش اما درست کار میکنه امیدوارم به دردتون بخوره
طرز کار:
مثلا برای قرار دادن تاریخ شمسی درون یک textbox
Text1.text = Miracle1.Shamsi
Miracle اسم کنترل تاریخ هستش و برای سایر استفاده ها مثل database و غیره هم دقیقا مثل بالا عمل میشه.
موفق باشید
سلام
من نتونستم تاریخی که انتخاب کردم در یک تکست باکس وارد کنم (در اکسس)و این ارور را میدهد
Run time error '424
object required
چی کاری میبایستی انجام دهم ،راهنمایی کنید
البته این هم بگم که ocx را توسط دستور regsvr32 رجیستر و سپس به رفرنس ها نیز اضافه کردم.
Aminch.pc
پنج شنبه 01 فروردین 1387, 01:47 صبح
سلام
من هم یک سؤال دارم. اول اجازه بدید که برنامم رو شرح بدم.
برنامه ای در حال ساخت دارم که با بانکهای اطلاعاتی هستش. من چند تکست باکس دارم که می خوام اطلاعات داخل اون فارسی تایپ بشه. همچنین برای این کار از یک فونت فارسی مثلاً titr یا kamran استفاده کردم. حالا وقتی این برنامه رو توی یک کامپیوتر دیگه اجرا می کنم فونت titr چون توی اون سیستم وجود نداره نشون داده نمی شه و به جای اون از یک فونت دیگه استفاده می شه.
حالا سؤال من از شما دوستان اینه که چطوری می شه از طریق برنامه نویسی یک فونت رو توی سیستم طرف کپی کرد که این مشکل حل بشه؟
perfeshnal
پنج شنبه 01 فروردین 1387, 05:50 صبح
اگر شما از برنامه های ستاپ ساز استفاده کنید می تونید به راحتی فونتهای خودتون رو در سیستم دیگه نصب کنید.
Mbt925
پنج شنبه 01 فروردین 1387, 05:59 صبح
سلام
من هم یک سؤال دارم. اول اجازه بدید که برنامم رو شرح بدم.
برنامه ای در حال ساخت دارم که با بانکهای اطلاعاتی هستش. من چند تکست باکس دارم که می خوام اطلاعات داخل اون فارسی تایپ بشه. همچنین برای این کار از یک فونت فارسی مثلاً titr یا kamran استفاده کردم. حالا وقتی این برنامه رو توی یک کامپیوتر دیگه اجرا می کنم فونت titr چون توی اون سیستم وجود نداره نشون داده نمی شه و به جای اون از یک فونت دیگه استفاده می شه.
حالا سؤال من از شما دوستان اینه که چطوری می شه از طریق برنامه نویسی یک فونت رو توی سیستم طرف کپی کرد که این مشکل حل بشه؟
توی تاپیک زیر آموزش کار با یه Setup سازه خوب قرارداده شده.
ازش استفاده کنید.
http://barnamenevis.org/forum/showthread.php?t=95510&highlight=%D8%A2%D9%85%D9%88%D8%B2%D8%B4
Aminch.pc
پنج شنبه 01 فروردین 1387, 09:45 صبح
اگر شما از برنامه های ستاپ ساز استفاده کنید می تونید به راحتی فونتهای خودتون رو در سیستم دیگه نصب کنید.
یعنی اگه فونت ها رو کنار برنامم بذارم و برای کل فایل ها یک ستاپ درست کنم به نتیجه دلخواه می رسم؟
perfeshnal
پنج شنبه 01 فروردین 1387, 11:27 صبح
شما به تاپیکی که آقا محسن زحمتش رو کشیدند مراجعه کنید اونجا یک آموزش درباره ساخت ستاپ هست. که همه چیز رو به طور کامل توضیح داده
http://barnamenevis.org/forum/showthread.php?t=95510&highlight=%D8%A2%D9%85%D9%88%D8%B2%D8%B4
arash_vb
چهارشنبه 07 فروردین 1387, 00:22 صبح
سلام...یه برنامه دارم می نویسم..تا دیروز بعد از دوماه کار همه چی درست بود...دستی هم به ویندوزم نزدم! یهو دیروز برنامه رو ران کردم دیدم اینپوت باکس و مسیج باکسم حروف فارسی رو جدا جدا نمایش میدن..!! آخه من به چیزی تو تنظیمات دست نزدم...لطفا راهنمایی کنید.وقتم تنگه!!:افسرده:
مرسی
فاطمه وطن دوست
چهارشنبه 07 فروردین 1387, 05:57 صبح
سلام
http://barnamenevis.org/forum/showthread.php?t=78376&page=21
کنترلی برای طراحی Msgbox های مختلف
arash_vb
چهارشنبه 07 فروردین 1387, 10:21 صبح
سلام
http://barnamenevis.org/forum/showthread.php?t=78376&page=21
کنترلی برای طراحی Msgbox های مختلف
با تشکر موضوع اینه که تا چند روز پیش همه اینپوت باکس ها و مسیج ها درست نشون میداد و ناگهان به این وخامت افتاد...لطفا راهنماییم کنید که چرا اینطور شدند و چه طور آنها را به حالت درست برگردونم..پیشاپیش بسیار متشکرم.
majjjj
چهارشنبه 07 فروردین 1387, 12:19 عصر
ایا از فونت خاصی استفاده میکنین
arash_vb
چهارشنبه 07 فروردین 1387, 14:54 عصر
ایا از فونت خاصی استفاده میکنین
اگه منظورتون در خود ویبی هست ، معمولا تاهوما که بدون مشکل همه جا اجرا میشه..اما به طور کلی خیر...
ویرایش شد:
به اجبار تابع و فرم اینپوت باکس رو خودم طراحی و اضافه کردم ..اما اگه کسی راجع به این مشکل میدونه لطفا راجع بهش بنویسه
سپاسگذارم
pesarekhobtar
دوشنبه 12 فروردین 1387, 01:00 صبح
با سلام ....
دوستان کسی می تونه توضیح بده چه طور می شه حروف را به صورت جدا از هم نوشت ولی به صورت چسبان...
مثلا حرف " ب " چسبانش می شه " بـ " و " ـبـ " اما این که اینجا نوشتم خودش شد دو تا کاراکتر . میشه یک نفر بگه چه طور میشه این کار را کرد چون اگر که دوتاش کنم درست می شه ولی من می خوام فقط یک حرف باشه که در این صورت با پاک کردن حرف دوم باز هم به صورت غیرچسبان در میاد : " ب " و " بپ "
امیدوارم تونسته باشم منظورم را درست برسونم ...
afsoonsoft_co
دوشنبه 19 فروردین 1387, 11:54 صبح
چرا وقتی انتهای textbox نقطه یاپراتز تایپ میکنیم بعدازذخیره کردن ودوباره لودکردن نقطه یا پرانتز جابجا میشه؟ تو چاپش هم همینجوریه؟
اگه کسی میتونه کمکم کنه ممنون میشم
perfeshnal
دوشنبه 19 فروردین 1387, 13:36 عصر
سلام
به احتمال زیاد شما خاصیت RightToLeft تکس باکس رو True نکردید.
afsoonsoft_co
سه شنبه 20 فروردین 1387, 10:02 صبح
سلام
مرسی ازراهنمایی - ولی اینکاروکردم نمیشه.ببینید اگر بعدازنقطه یا پرانتز یک کاراکتر دیگه بزارم درست میشه ولی اگر آخرین کاراکتر اونا باشند این مشکل پیش میاد
parselearn
یک شنبه 25 فروردین 1387, 07:35 صبح
کتابچه ای در مورد تنظیمات زبان ویندوز
دریافت (http://parselearn.parsaspace.ir/DL/Farsi-Language.zip)
afsoonsoft_co
پنج شنبه 29 فروردین 1387, 23:55 عصر
منظورمن توactive reporte توروخدایکی راهنمایی کنه
hrj1981
جمعه 30 فروردین 1387, 09:04 صبح
نسخه اصلاحی اکتیوریپورت روی وب سایت دیتادینامیکس اومده می تونی ازش استفاده کنی
afsoonsoft_co
یک شنبه 01 اردیبهشت 1387, 10:57 صبح
باتشکرازراهنماییتون. من اکتیوریپورت 2 روهم نصب کردم ولی بازهم فیلدها خاصیت right to left ندارندومشکل همچنان باقیست
ashkan23
پنج شنبه 05 اردیبهشت 1387, 19:54 عصر
سلام
من یه مشکل با Menu Editor وی بی دارم نمی تونم باهاش منوی فارسی از سمت راست درست کنم لطفا کمک کنید ممنون
mrsalam
جمعه 14 تیر 1387, 13:27 عصر
سلام
چرا خاصیت right to left فرمم ترو نمیشه؟
VB.SOS
شنبه 15 تیر 1387, 12:28 عصر
چون تو سيستمت فارسي نصب نيست. اگه فارسي رو توي ايكس پي نصب كني اين مشكل هم رفع ميشه
VB.SOS
شنبه 15 تیر 1387, 12:29 عصر
پيشنهاد ميكنم اين تاپيك جزء تاپيكهاي اعلان بشه تا هميشه مورد استفاده قرار بگيره.
VB.SOS
شنبه 15 تیر 1387, 12:31 عصر
سلام
من یه مشکل با Menu Editor وی بی دارم نمی تونم باهاش منوی فارسی از سمت راست درست کنم لطفا کمک کنید ممنون
دوست عزيز از كنترل هايي كه منوساز هستند استفاده كن مثل كنترل OfficeMenu تو سايت زياد هست.
ابوذر محمودی
شنبه 15 تیر 1387, 14:27 عصر
مشکل از menu editor نیست .شما right to left فرمتون رو true کنید .
پیشنهاد می کنم یه سری هم به این تاپیک بزنید . خیلی جالبه . حتما خوشتون می یاد.
واسه گرافیکی کردن برنامه و رها شدن از منوهای وی بی حرف نداره .
http://barnamenevis.org/forum/showpost.php?p=545468&postcount=248
ابراهیم ب
شنبه 15 تیر 1387, 17:00 عصر
با تشکر از کدهایی که نوشتین . ولی SQL من فیلدهای فارسی را به صورت ؟؟؟؟؟؟؟ نمایش می دهد. شما راهکاری برای رفع این حالت دارید
mohsen_f_b
شنبه 15 تیر 1387, 17:47 عصر
سلام دوستان عزیز
من خیلی حال کردم با این سمت
هرچه که خواستم توش پیدا کردم
حالا یک چیز می خوام که خیلی هم فوری اگه کسی بتونه راهنمایی کن ممنون می شم.
من می خوام بعد از ورود اطلاعات و پرکردن تمام فلیدها یک فایل PDF همره با تمام اطلاعات درون دیتابیس ( Access) ذخیره کنم.
بعد در قسمت جستجو وقتی اون چیزی رو که میخوام جستجو کنم تمتمی اطلاعات همراه با فایل PDF رو به من نشان بده.
مشکل من در قسمت آوردن فایل PDf و ذخیره کردن و نمایش اون تو جستجو .
اگه کسی از دوستان بلده مارو راهنمایی کنه ممنونم.
Microsoft Visual Basic 6.0
mehdi_7070
دوشنبه 24 تیر 1387, 22:20 عصر
سلام
سورس کدی هست که وقتی کاربر "ي" یا "ك" عربی را تایپ میکنه به "ی" و "ک" فارسی تبدیل کنه؟
vahid_d_0101
دوشنبه 24 تیر 1387, 22:25 عصر
شاید اگه شما chr ی فارسی و ک فارسی رو بدونید بشه یه کاری کرد.
CHR یه عدد هست که برای تمام حروف فرق داره من الان ببینم می تونم با این کد کاری کنم یا نه.
r_oscar2007
سه شنبه 25 تیر 1387, 00:10 صبح
دوست عزیز اون chr نیست بلکه asc هستش که یک کاراکتر گرغته و کد اسکی آن را به ما میدهد
vahid_d_0101
سه شنبه 25 تیر 1387, 00:26 صبح
من که کد اسکی رو نمیگم شما مثلا این دستورو بنویسید
Private Sub Form_Load()
Text1.Text = Chr(70)
End Sub
میبینید که حرف F در text1 به نمایش در می اید که تمام حروف و علامت ها و هرچی که می شه تو کامپیوتر تایپ کنند یه عدد مخصوص به خودشو داره حتا حروف کوچیک و بزرگ
mehdi_7070
سه شنبه 25 تیر 1387, 09:49 صبح
خوب این دو تا مقدار را پیدا کردم و با دستور Replace هم جایگزین کردم .
مشکل اینجاست که مثلا "برنامه نویس" را به "برنامه نوىس" تبدیل میکنه!!
aminkk
سه شنبه 25 تیر 1387, 11:45 صبح
اين مشكل ويندوز هستش.
mehdi_7070
سه شنبه 25 تیر 1387, 12:05 عصر
اين مشكل ويندوز هستش.
نه ، مشکل ویندوز نیست . توی Replace کردن یک مشکلی وجود داره!
ab1234
چهارشنبه 27 شهریور 1387, 12:42 عصر
از همه دوستان بخاطر همکاریشون ممنونم
من می خوام یه متن فارسی رو از طریق برنامه ای که با VB نوشتم ایمیل کنم...
متن فارسی تو خود برنامه مشکلی نداره. ولی وقتی ارسال میشه تو ایمیل به صورت ؟ در میاد
تو سایت هم جستجو کردم ولی چیزی پیدا نشد
لطفا منو راهنمایی کنید
r0ot$harp
چهارشنبه 27 شهریور 1387, 14:08 عصر
از همه دوستان بخاطر همکاریشون ممنونم
من می خوام یه متن فارسی رو از طریق برنامه ای که با VB نوشتم ایمیل کنم...
متن فارسی تو خود برنامه مشکلی نداره. ولی وقتی ارسال میشه تو ایمیل به صورت ؟ در میاد
تو سایت هم جستجو کردم ولی چیزی پیدا نشد
لطفا منو راهنمایی کنید
شما باید از URL_Encode استفاده کنید . اگر چیزی پیدا نکردید بگید براتون یه نمونه بزارم .
باتشکر احسان
ab1234
چهارشنبه 27 شهریور 1387, 15:15 عصر
شما باید از URL_Encode استفاده کنید . اگر چیزی پیدا نکردید بگید براتون یه نمونه بزارم .
باتشکر احسان
ممنون از راهنماییتون ولی من متوجه نشدم:خجالت:
میشه بیشتر توضیح بدین؟؟
این چی هست؟؟
چجوری کار میکنه؟؟
من یه Encoding میشناسم اگه منظورتون اینه که تو محیط ایمیل راست کلیک کنم و Encode .... باید بگم با این هیچ تغییری نمی کنه :متفکر:
r0ot$harp
چهارشنبه 27 شهریور 1387, 15:34 عصر
ممنون از راهنماییتون ولی من متوجه نشدم:خجالت:
میشه بیشتر توضیح بدین؟؟
این چی هست؟؟
چجوری کار میکنه؟؟
من یه Encoding میشناسم اگه منظورتون اینه که تو محیط ایمیل راست کلیک کنم و Encode .... باید بگم با این هیچ تغییری نمی کنه :متفکر:
دوست عزیز وقتی شما یه مقداری رو به یه سرور می فرستین یا حتی سرور ها بین خودشون رد و بدل می کنند این رشته ها که ردوبدل می شن با استفاده از Url Encode کد می شن و بین هم فرستاده می شن .
مثل فرستادن پیغام فارسی در Yahoo Messenger هست که باید حتما رشته قبل از فرستاده شدن به Utf-8 Encode تبدیل بشه و بعد فرستاده بشه و در نت و سرور ها هم باید با استفاده از Url Encode پیام ها رد و بدل بشه .
در Header هایی که در پروتکل Http 1.1 نوشته می شوند یک مقدار هست که تنظیم کننده ی نوع اطلاعات ارسالی هست به نام :
Content-Type: application/x-www-form-urlencoded
با استفاده از این خاصیت و مقدار شما به سرور اعلام می کنید که بسته های ارسالی شما به طرف سرور به وسیله Url Encode کد شده اند و اگر اینگونه نباشد هم خطا اعلام می کنه و در بعضی از موارد هم به جای حروف ؟؟؟؟ قرار می دهد .
باتشکر احسان
ab1234
چهارشنبه 27 شهریور 1387, 15:56 عصر
متشکرم آقا احسان
ولی من با متن انگلیسی هیچ مشکلی ندارم . یعنی انگلیسی نیاز به کد شدن نداره؟
حالا چجوری باید متن رو کد کنم؟؟ اگه ممکنه بیشتر توضیح بدید چون این چیزی که شما می فرماید رو من تا حالا نشنیده بودم:خجالت:
اگه یه نمونه هم بزارید که حسابی شرمندم کردید دیگه!!
بازم ممنون:قلب:
r0ot$harp
چهارشنبه 27 شهریور 1387, 16:06 عصر
متشکرم آقا احسان
ولی من با متن انگلیسی هیچ مشکلی ندارم . یعنی انگلیسی نیاز به کد شدن نداره؟
حالا چجوری باید متن رو کد کنم؟؟ اگه ممکنه بیشتر توضیح بدید چون این چیزی که شما می فرماید رو من تا حالا نشنیده بودم:خجالت:
اگه یه نمونه هم بزارید که حسابی شرمندم کردید دیگه!!
بازم ممنون:قلب:
دوست عزیز بازهم نمی دونم شما الان می خواین به چه جایی اطلاعات رو بفرستین ولی امید وارم نمونه ای که می زارم به کارتون بیاد .
دوست عزیز کدهای زیر رو در داخل یه Module کپی کنید .
Option Compare Binary
Public sCodePage As Long
Public cnvUni2 As String
Public cnvUni As String
Public Const CP_ACP = 0
Public Const CP_NONE = 0
Public Const CP_OEMCP = 1
Public Const CP_WINANSI = 1004
Public Const CP_WINUNICODE = 1200
Public Const MB_PRECOMPOSED = &H1
Public Const MB_COMPOSITE = &H2
Public Const MB_USEGLYPHCHARS = &H4
' //Arabic
Public Const CP_AWIN = 101
Public Const CP_709 = 102
Public Const CP_720 = 103
Public Const CP_A708 = 104
Public Const CP_A449 = 105
Public Const CP_TARB = 106
Public Const CP_NAE = 107
Public Const CP_V4 = 108
Public Const CP_MA2 = 109
Public Const CP_I864 = 110
Public Const CP_A437 = 111
Public Const CP_AMAC = 112
' //Hebrew
Public Const CP_HWIN = 201
Public Const CP_862I = 202
Public Const CP_7BIT = 203
Public Const CP_ISO = 204
Public Const CP_H437 = 205
Public Const CP_HMAC = 206
' /************************************************** ***********************
' Code Pages
' ************************************************** ***********************/
Public Const CP_OEM_437 = 437
Public Const CP_ARABICDOS = 708
Public Const CP_DOS720 = 720
Public Const CP_IBM850 = 850
Public Const CP_IBM852 = 852
Public Const CP_DOS862 = 862
Public Const CP_IBM866 = 866
Public Const CP_THAI = 874
Public Const CP_JAPAN = 932
Public Const CP_CHINA = 936
Public Const CP_KOREA = 949
Public Const CP_TAIWAN = 950
Public Const CP_EASTEUROPE = 1250
Public Const CP_RUSSIAN = 1251
Public Const CP_WESTEUROPE = 1252
Public Const CP_GREEK = 1253
Public Const CP_TURKISH = 1254
Public Const CP_HEBREW = 1255
Public Const CP_ARABIC = 1256
Public Const CP_BALTIC = 1257
Public Const CP_VIETNAMESE = 1258
Public Const CP_ASCII = 20127
Public Const CP_RUSSIANKOI8R = 20866
Public Const CP_RUSSIANKOI8U = 21866
Public Const CP_ISOLATIN1 = 28591
Public Const CP_ISOEASTEUROPE = 28592
Public Const CP_ISOTURKISH = 28593
Public Const CP_ISOBALTIC = 28594
Public Const CP_ISORUSSIAN = 28595
Public Const CP_ISOARABIC = 28596
Public Const CP_ISOGREEK = 28597
Public Const CP_ISOHEBREW = 28598
Public Const CP_ISOTURKISH2 = 28599
Public Const CP_ISOLATIN9 = 28605
Public Const CP_HEBREWLOG = 38598
Public Const CP_USER = 50000
Public Const CP_AUTOALL = 50001
Public Const CP_JAPANNHK = 50220
Public Const CP_JAPANESC = 50221
Public Const CP_JAPANSIO = 50222
Public Const CP_KOREAISO = 50225
Public Const CP_TAIWANISO = 50227
Public Const CP_CHINAISO = 50229
Public Const CP_AUTOJAPAN = 50932
Public Const CP_AUTOCHINA = 50936
Public Const CP_AUTOKOREA = 50949
Public Const CP_AUTOTAIWAN = 50950
Public Const CP_AUTORUSSIAN = 51251
Public Const CP_AUTOGREEK = 51253
Public Const CP_AUTOARABIC = 51256
Public Const CP_JAPANEUC = 51932
Public Const CP_CHINAEUC = 51936
Public Const CP_KOREAEUC = 51949
Public Const CP_TAIWANEUC = 51950
Public Const CP_CHINAHZ = 52936
Public Const CP_MAC_ROMAN = 10000
Public Const CP_MAC_JAPAN = 10001
Public Const CP_MAC_ARABIC = 10004
Public Const CP_MAC_GREEK = 10006
Public Const CP_MAC_CYRILLIC = 10007
Public Const CP_MAC_LATIN2 = 10029
Public Const CP_MAC_TURKISH = 10081
#If Mac Then
Public Const CP_DEFAULT = CP_MACCP
#Else
Public Const CP_DEFAULT = CP_ACP
#End If
Public Const CP_JOHAB = 1361
Public Const CP_SYMBOL = 42
Public Const CP_UTF8 = 65001
Public Const CP_UTF7 = 65000
Public Const CP_UNICODELITTLE = 1200
Public Const CP_UNICODEBIG = 1201
Public Const CP_UNKNOWN = -1
Public Const MB_ERR_INVALID_CHARS = &H8
Public Const WC_DEFAULTCHECK = &H100
Public Const WC_COMPOSITECHECK = &H200
Public Const WC_DISCARDNS = &H10
Public Const WC_SEPCHARS = &H20
Public Const WC_DEFAULTCHAR = &H40
Private Type FONTSIGNATURE
fsUsb(4) As Long
fsCsb(2) As Long
End Type
Private Type CHARSETINFO
ciCharset As Long
ciACP As Long
fs As FONTSIGNATURE
End Type
Private Const LOCALE_IDEFAULTCODEPAGE = &HB
Private Const LOCALE_IDEFAULTANSICODEPAGE = &H1004
Private Const TCI_SRCCODEPAGE = 2
Private Declare Function GetACP Lib "Kernel32" () As Long
Private Declare Function GetLocaleInfoA _
Lib "Kernel32" (ByVal Locale As Long, _
ByVal LCType As Long, _
ByVal lpLCData As String, _
ByVal cchData As Long) As Long
Private Declare Function GetSystemDefaultLCID Lib "Kernel32" () As Long
Private Declare Function IsWindowUnicode Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function TranslateCharsetInfo _
Lib "gdi32" (lpSrc As Long, _
lpcs As CHARSETINFO, _
ByVal dwFlags As Long) As Long
Private Declare Function MultiByteToWideChar _
Lib "Kernel32" (ByVal CodePage As Long, _
ByVal dwFlags As Long, _
ByVal lpMultiByteStr As Long, _
ByVal cchMultiByte As Long, _
ByVal lpWideCharStr As Long, _
ByVal cchWideChar As Long) As Long
Private Declare Function WideCharToMultiByte _
Lib "Kernel32" (ByVal CodePage As Long, _
ByVal dwFlags As Long, _
ByVal lpWideCharStr As Long, _
ByVal cchWideChar As Long, _
ByVal lpMultiByteStr As Long, _
ByVal cchMultiByte As Long, _
ByVal lpDefaultChar As Long, _
lpUsedDefaultChar As Long) As Long
'Private Declare Function MsoCpgFromLid Lib "c:\program files\Microsoft Office 9\office\mso9.dll" Alias "#307" (ByVal lid As Long) As Long
'Private Declare Function MsoCpgFromLid Lib "c:\program files\Microsoft Office 8\office\mso97.dll" Alias "#307" (ByVal lid As Long) As Long
Private Declare Function MsoCpgFromLid _
Lib "c:\program files\common files\microsoft shared\vba\mso97rt.dll" _
Alias "#307" (ByVal lid As Long) As Long
'Private Declare Function MsoMultiByteToWideChar Lib "c:\program files\Microsoft Office 9\office\mso9.dll" Alias "#778" (ByVal CodePage As Long, ByVal dwFlags As Long, ByVal lpMultiByteStr As Long, ByVal cchMultiByte As Long, ByVal lpWideCharStr As Long, ByVal cchWideChar As Long) As Long
'Private Declare Function MsoMultiByteToWideChar Lib "c:\program files\Microsoft Office 8\office\mso97.dll" Alias "#778" (ByVal CodePage As Long, ByVal dwFlags As Long, ByVal lpMultiByteStr As Long, ByVal cchMultiByte As Long, ByVal lpWideCharStr As Long, ByVal cchWideChar As Long) As Long
Private Declare Function MsoMultiByteToWideChar _
Lib "c:\program files\common files\microsoft shared\vba\mso97rt.dll" _
Alias "#778" (ByVal CodePage As Long, _
ByVal dwFlags As Long, _
ByVal lpMultiByteStr As Long, _
ByVal cchMultiByte As Long, _
ByVal lpWideCharStr As Long, _
ByVal cchWideChar As Long) As Long
'Private Declare Function MsoWideCharToMultiByte Lib "c:\program files\Microsoft Office 9\office\mso9.dll" Alias "#915" (ByVal CodePage As Long, ByVal dwFlags As Long, ByVal lpWideCharStr As Long, ByVal cchWideChar As Long, ByVal lpMultiByteStr As Long, ByVal cchMultiByte As Long, ByVal lpDefaultChar As Long, lpUsedDefaultChar As Long) As Long
'Private Declare Function MsoWideCharToMultiByte Lib "c:\program files\Microsoft Office 8\office\mso97.dll" Alias "#915" (ByVal CodePage As Long, ByVal dwFlags As Long, ByVal lpWideCharStr As Long, ByVal cchWideChar As Long, ByVal lpMultiByteStr As Long, ByVal cchMultiByte As Long, ByVal lpDefaultChar As Long, lpUsedDefaultChar As Long) As Long
Private Declare Function MsoWideCharToMultiByte _
Lib "c:\program files\common files\microsoft shared\vba\mso97rt.dll" _
Alias "#915" (ByVal CodePage As Long, _
ByVal dwFlags As Long, _
ByVal lpWideCharStr As Long, _
ByVal cchWideChar As Long, _
ByVal lpMultiByteStr As Long, _
ByVal cchMultiByte As Long, _
ByVal lpDefaultChar As Long, _
lpUsedDefaultChar As Long) As Long
'<CSCM>
'--------------------------------------------------------------------------------
' Project : Project1
' Procedure : ChsFromLocaleEx
' Description: [type_description_here]
' Created by : Project Administrator
' Machine : EHSAN-AD91DAD44
' Date-Time : 9/17/2008-16:31:09
'
' Parameters : lcid (Long)
'--------------------------------------------------------------------------------
'</CSCM>
Public Function ChsFromLocaleEx(lcid As Long) As Long
ChsFromLocaleEx = MsoCpgFromLid(lcid)
End Function
'<CSCM>
'--------------------------------------------------------------------------------
' Project : Project1
' Procedure : AToW
' Description: [type_description_here]
' Created by : Project Administrator
' Machine : EHSAN-AD91DAD44
' Date-Time : 9/17/2008-16:31:09
'
' Parameters : st (String)
' cpg (Long = -1)
' lFlags (Long = 0)
'--------------------------------------------------------------------------------
'</CSCM>
Public Function AToW(ByVal st As String, _
Optional ByVal cpg As Long = -1, _
Optional lFlags As Long = 0) As String
Dim stBuffer As String
Dim cwch As Long
Dim pwz As Long
Dim pwzBuffer As Long
If cpg = -1 Then cpg = GetACP()
pwz = StrPtr(st)
cwch = MultiByteToWideChar(cpg, lFlags, pwz, -1, 0&, 0&)
stBuffer = String$(cwch + 1, vbNullChar)
pwzBuffer = StrPtr(stBuffer)
cwch = MultiByteToWideChar(cpg, lFlags, pwz, -1, pwzBuffer, Len(stBuffer))
AToW = Left$(stBuffer, cwch - 1)
End Function
'<CSCM>
'--------------------------------------------------------------------------------
' Project : Project1
' Procedure : AToWEx
' Description: [type_description_here]
' Created by : Project Administrator
' Machine : EHSAN-AD91DAD44
' Date-Time : 9/17/2008-16:31:09
'
' Parameters : st (String)
' lcid (Long = -1)
' lFlags (Long = 0)
'--------------------------------------------------------------------------------
'</CSCM>
Public Function AToWEx(ByVal st As String, _
Optional ByVal lcid As Long = -1, _
Optional lFlags As Long = 0) As String
Dim cpg As Long
Dim lpUsedDefaultChar As Long
If lcid = -1 Then lcid = GetSystemDefaultLCID()
cpg = ChsFromLocaleEx(lcid)
AToWEx = AToW(st, cpg, lFlags)
End Function
'<CSCM>
'--------------------------------------------------------------------------------
' Project : Project1
' Procedure : WToA
' Description: [type_description_here]
' Created by : Project Administrator
' Machine : EHSAN-AD91DAD44
' Date-Time : 9/17/2008-16:31:08
'
' Parameters : st (String)
' cpg (Long = -1)
' lFlags (Long = 0)
'--------------------------------------------------------------------------------
'</CSCM>
Public Function WToA(ByVal st As String, _
Optional ByVal cpg As Long = -1, _
Optional lFlags As Long = 0) As String
Dim stBuffer As String
Dim cwch As Long
Dim pwz As Long
Dim pwzBuffer As Long
Dim lpUsedDefaultChar As Long
If cpg = -1 Then cpg = GetACP()
pwz = StrPtr(st)
cwch = WideCharToMultiByte(cpg, lFlags, pwz, -1, 0&, 0&, ByVal 0&, ByVal 0&)
stBuffer = String$(cwch + 1, vbNullChar)
pwzBuffer = StrPtr(stBuffer)
cwch = WideCharToMultiByte(cpg, lFlags, pwz, -1, pwzBuffer, Len(stBuffer), ByVal 0&, ByVal 0&)
WToA = Left$(stBuffer, cwch - 1)
End Function
'<CSCM>
'--------------------------------------------------------------------------------
' Project : Project1
' Procedure : WToAEx
' Description: [type_description_here]
' Created by : Project Administrator
' Machine : EHSAN-AD91DAD44
' Date-Time : 9/17/2008-16:31:08
'
' Parameters : st (String)
' lcid (Long = -1)
' lFlags (Long = 0)
'--------------------------------------------------------------------------------
'</CSCM>
Public Function WToAEx(ByVal st As String, _
Optional ByVal lcid As Long = -1, _
Optional lFlags As Long = 0) As String
Dim cpg As Long
Dim lpUsedDefaultChar As Long
If lcid = -1 Then lcid = GetSystemDefaultLCID()
cpg = ChsFromLocaleEx(lcid)
WToAEx = WToA(st, cpg, lFlags)
End Function
'<CSCM>
'--------------------------------------------------------------------------------
' Project : Project1
' Procedure : FStringInCpg
' Description: [type_description_here]
' Created by : Project Administrator
' Machine : EHSAN-AD91DAD44
' Date-Time : 9/17/2008-16:31:08
'
' Parameters : st (String)
' cpg (Long = -1)
'--------------------------------------------------------------------------------
'</CSCM>
Public Function FStringInCpg(ByVal st As String, _
Optional ByVal cpg As Long = -1) As Boolean
Dim cwch As Long
Dim lpUsedDefaultChar As Long
If cpg = -1 Then cpg = GetACP()
cwch = MsoWideCharToMultiByte(cpg, 0&, StrPtr(st), -1, 0&, 0&, ByVal 0&, lpUsedDefaultChar)
FStringInCpg = (CBool(lpUsedDefaultChar) = False)
End Function
'<CSCM>
'--------------------------------------------------------------------------------
' Project : Project1
' Procedure : FStringInCpgEx
' Description: [type_description_here]
' Created by : Project Administrator
' Machine : EHSAN-AD91DAD44
' Date-Time : 9/17/2008-16:31:08
'
' Parameters : st (String)
' lcid (Long = -1)
'--------------------------------------------------------------------------------
'</CSCM>
Public Function FStringInCpgEx(ByVal st As String, _
Optional ByVal lcid As Long = -1) As Boolean
Dim cwch As Long
Dim cpg As Long
Dim lpUsedDefaultChar As Long
If lcid = -1 Then lcid = GetSystemDefaultLCID()
cpg = ChsFromLocaleEx(lcid)
FStringInCpgEx = FStringInCpg(st, cpg)
End Function
'<CSCM>
'--------------------------------------------------------------------------------
' Project : Project1
' Procedure : ChsFromLocale
' Description: [type_description_here]
' Created by : Project Administrator
' Machine : EHSAN-AD91DAD44
' Date-Time : 9/17/2008-16:31:08
'
' Parameters : lcid (Long)
'--------------------------------------------------------------------------------
'</CSCM>
Public Function ChsFromLocale(lcid As Long) As Long
Dim cwc As Long
Dim cpg As Long
Dim stBuffer As String
Dim cs As CHARSETINFO
stBuffer = String$(10, vbNullChar)
cwc = GetLocaleInfoA(lcid, LOCALE_IDEFAULTANSICODEPAGE, stBuffer, Len(stBuffer))
If cwc > 0 Then
cpg = Val(Left$(stBuffer, cwc - 1))
If TranslateCharsetInfo(ByVal cpg, cs, TCI_SRCCODEPAGE) Then
ChsFromLocale = cs.ciCharset
End If
End If
End Function
'<CSCM>
'--------------------------------------------------------------------------------
' Project : Project1
' Procedure : DecodeUTF8
' Description: [type_description_here]
' Created by : Project Administrator
' Machine : EHSAN-AD91DAD44
' Date-Time : 9/17/2008-16:31:08
'
' Parameters : cnvUni (String)
'--------------------------------------------------------------------------------
'</CSCM>
Public Function DecodeUTF8(ByVal cnvUni As String)
If cnvUni = vbNullString Then Exit Function
cnvUni2 = WToA(cnvUni, CP_ACP)
DecodeUTF8 = AToW(cnvUni2, CP_UTF8)
End Function
'<CSCM>
'--------------------------------------------------------------------------------
' Project : Project1
' Procedure : UTF8_Encode
' Description: [type_description_here]
' Created by : Project Administrator
' Machine : EHSAN-AD91DAD44
' Date-Time : 9/17/2008-16:31:08
'
' Parameters : sStr (String)
'--------------------------------------------------------------------------------
'</CSCM>
Public Function UTF8_Encode(ByVal sStr As String)
For l& = 1 To Len(sStr)
lChar& = AscW(Mid(sStr, l&, 1))
If lChar& < 128 Then
sUtf8$ = sUtf8$ + Mid(sStr, l&, 1)
ElseIf ((lChar& > 127) And (lChar& < 2048)) Then
sUtf8$ = sUtf8$ + Chr(((lChar& \ 64) Or 192))
sUtf8$ = sUtf8$ + Chr(((lChar& And 63) Or 128))
Else
sUtf8$ = sUtf8$ + Chr(((lChar& \ 144) Or 234))
sUtf8$ = sUtf8$ + Chr((((lChar& \ 64) And 63) Or 128))
sUtf8$ = sUtf8$ + Chr(((lChar& And 63) Or 128))
End If
Next l&
UTF8_Encode = sUtf8$
End Function
و این خط هم برای کد کردن و طرز استفاده از این Module :
MsgBox UTF8_Encode("احسان تو دنیا همیشه هست")
باتشکر احسان
ab1234
پنج شنبه 28 شهریور 1387, 00:57 صبح
بازم جواب نگرفتم:ناراحت:
ببینید یه برنامه ارسال ایمیل ساده رو در نظر بگیرید که از یه SMTP مثل Gmail ایمیل میفرسته
من می خوام متن ایمیلم فارسی باشه
اون کدی رو که دادین تو یه ماژول کپی کردم ولی بازم وقتی ایملی میفرسته متن فارسیش به صورت ؟ و یه سری حروف غیر قابل خوندن در میاد.(اول به UTF8 تبدیلش کردم و بعد ارسال)
به نظر شما اشکال از کجاس؟؟?
متشکرم
ab1234
شنبه 30 شهریور 1387, 18:19 عصر
واقا کسی نمی تونه به من کمک کنه!!!؟؟؟:گریه:
ببینید من می خوام به یه برنامه مثل این (http://barnamenevis.org/forum/attachment.php?attachmentid=14974&d=1204049218)
ایمیل بفرستم ولی متنش فارسی باشه
لطفا راهنمایی کنید
ممنون میشم
sunyniazi
یک شنبه 08 فروردین 1389, 23:20 عصر
تبدیل صفحه کلید به فارسی در ویژوال بیسیک 6
ابتدا تابع زیر را تعریف کنید :
Public Declare Function LoadKeyboardLayout Lib "user32" Alias "LoadKeyboardLayoutA" (ByVal pwszKLID As String, ByVal flags As Long) As Longویندوز پارسا 99 ، اکس پی و 2000 که فارسی نصب شده باشد :
Dim xx As Long
xx = LoadKeyboardLayout("00000429", 1)ویندوز پارسا 2001 و امثال آن :
Dim xx As Long
xx = LoadKeyboardLayout("00000401", 1)کد 401 برای عربی عربستان است که در ویندوز پارسا 2001 به جای فارسی به کار می رود .
با تشكر از دوست عزيز
در ضمن اين لينك تمامي كدهاي زبانها رو نوشته
خيلي به درد من خورد گفتم شايد به درد كسي بخوره :چشمک:
http://www.microsoft.com/globaldev/reference/win2k/setup/lcid.mspx
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.