سلام
چطور میشه با پورت ها ارتباط برقرار کرد - منظورم سوکت هست نه comport
من خودم یکی نوشتم ارسال میکنه ولی دریافت نمی کنه
سلام
چطور میشه با پورت ها ارتباط برقرار کرد - منظورم سوکت هست نه comport
من خودم یکی نوشتم ارسال میکنه ولی دریافت نمی کنه
کدتون رو اینجا قرار بدید تا درباره اش بحث کنیم...
يه نگاه به این بندازین، نحوه استفاده از پورت ها برای ارسال و دریافت داده رو می بینید چجوریه.
موفق باشید
jooje
قفل مخفی تلگرام، واتس اپ و همه برنامه ها - قفل حرفه ای برای دستگاه اندرویدی شما - با امکان مخفی شدن و جلوگیری از Unisntall شدن
--آموزش ایجاد برنامه های چند زبانه در WPF
-BeRMOoDA File Encrypter-open source-using WPF, C# and MVVM Pattern
-نمونه برنامه ساده و کامل با الگوی MVVM برای کار با دیتابیس با استفاده از Entity Framework در WPF
-WPFMessageBox فارسی/انگلیسی - با قابلیت تغییر Skin
سلام
خیلی ممنون قسمت ارسال رو من به این صورت نوشتم
public string SendDataToServer(String message, Byte cid)
{
message = " " + message;
Byte[] data = System.Text.Encoding.ASCII.GetBytes(message);
data[0] = cid;
stream.Write(data, 0, data.Length);
while (!stream.DataAvailable) Application.DoEvents();
if (stream.DataAvailable)
{
data = new Byte[256];
String responseData = String.Empty;
responseData = "";
Int32 bytes = stream.Read(data, 0, data.Length);
responseData = System.Text.Encoding.ASCII.GetString(data, 0, bytes);
return responseData;
}
return "Time out";
}
دو تا تابع برای بازکردن و پستن پورت هم هست
خوشبختانه کد من درست هستش و یک اشکال کوچیک داره و اون اینه که unicode رو به صورت علامت سوال ارسال می کنه و سرور بهش پاسخ نمیده
قسمت سرور با دلفی نوشته شده و انتظار دریافت رشته widestring رو داره ( چون اطلاعات فارسی پردازش میشه )
می خواستم ببینم widestring تو C# معادلش چي میشه؟
چرا در هر دو طرف از UTF8 استفاده نمی کنید؟ (البته من از دلفی چیزی نمیدونم!)
معادل widestring همون string هست ظاهرا
http://www.netcoole.com/delphi2cs/datatype.htm
قفل مخفی تلگرام، واتس اپ و همه برنامه ها - قفل حرفه ای برای دستگاه اندرویدی شما - با امکان مخفی شدن و جلوگیری از Unisntall شدن
--آموزش ایجاد برنامه های چند زبانه در WPF
-BeRMOoDA File Encrypter-open source-using WPF, C# and MVVM Pattern
-نمونه برنامه ساده و کامل با الگوی MVVM برای کار با دیتابیس با استفاده از Entity Framework در WPF
-WPFMessageBox فارسی/انگلیسی - با قابلیت تغییر Skin
اين خط رو
Byte[] data = System.Text.Encoding.ASCII.GetBytes(message);
به صورت
Byte[] data = System.Text.Encoding.Unicode.GetBytes(message);
که می نویسم خالی ارسال میشه
و اینجوی
Byte[] data = System.Text.Encoding.UTF8.GetBytes(message);
کاراکتر هایی دیگه ارسال میشه
شما یه برنامه کوچیک واسه اون ور با NET.بنویسین و ببینید چطور جواب می گیرید.
من فکر میکنم مشکل به خاطر اینه که اون ور دلفیه.
قفل مخفی تلگرام، واتس اپ و همه برنامه ها - قفل حرفه ای برای دستگاه اندرویدی شما - با امکان مخفی شدن و جلوگیری از Unisntall شدن
--آموزش ایجاد برنامه های چند زبانه در WPF
-BeRMOoDA File Encrypter-open source-using WPF, C# and MVVM Pattern
-نمونه برنامه ساده و کامل با الگوی MVVM برای کار با دیتابیس با استفاده از Entity Framework در WPF
-WPFMessageBox فارسی/انگلیسی - با قابلیت تغییر Skin
این کار رو هم انجام میدم ولی به هر حال باید منتقل بشه و البته درست
در حالت ASCII اگه لاتین باشه درست منتقل میشه ولی بقیه رو چک نکردم
ولی به نظر من به خاطر تفاوت در Enciding رشته ها هستش
با Encoding UTF8 هم لاتین و هم فارسی باید به درستی منتقل و به درستی دریافت بشن. کاری که من چندین بار انجام دادم.
قفل مخفی تلگرام، واتس اپ و همه برنامه ها - قفل حرفه ای برای دستگاه اندرویدی شما - با امکان مخفی شدن و جلوگیری از Unisntall شدن
--آموزش ایجاد برنامه های چند زبانه در WPF
-BeRMOoDA File Encrypter-open source-using WPF, C# and MVVM Pattern
-نمونه برنامه ساده و کامل با الگوی MVVM برای کار با دیتابیس با استفاده از Entity Framework در WPF
-WPFMessageBox فارسی/انگلیسی - با قابلیت تغییر Skin
تعریف widestring در دلفي :
WideString ~2^30 characters 4 bytes to 2GB Unicode characters; multi-user servers and multi-language applications
با utf8 کلمه رسیدی؟ رو ميفرستم این در یافت میشه ط±ط³غŒط¯غŒطں
تست کردم با utf8 لاتین درست ارسال میشه و درست دریافت میشه
اون ور هم بایت های دریافتی رو بصورت UTF8 در میاری؟
قفل مخفی تلگرام، واتس اپ و همه برنامه ها - قفل حرفه ای برای دستگاه اندرویدی شما - با امکان مخفی شدن و جلوگیری از Unisntall شدن
--آموزش ایجاد برنامه های چند زبانه در WPF
-BeRMOoDA File Encrypter-open source-using WPF, C# and MVVM Pattern
-نمونه برنامه ساده و کامل با الگوی MVVM برای کار با دیتابیس با استفاده از Entity Framework در WPF
-WPFMessageBox فارسی/انگلیسی - با قابلیت تغییر Skin
نه اون ور بایت ها رو به صورت widestring لازم دارم
در ضمن کد "ر" 1585 هستش ولی تو C# به 1591 یعني "ط" تبدیل میشه
ببینین همه کاراکترها همینقدر جابجا میشن؟ اگه همه به یه مقدار تغییر میکنه کدشون، خوب کارتون حله.
قفل مخفی تلگرام، واتس اپ و همه برنامه ها - قفل حرفه ای برای دستگاه اندرویدی شما - با امکان مخفی شدن و جلوگیری از Unisntall شدن
--آموزش ایجاد برنامه های چند زبانه در WPF
-BeRMOoDA File Encrypter-open source-using WPF, C# and MVVM Pattern
-نمونه برنامه ساده و کامل با الگوی MVVM برای کار با دیتابیس با استفاده از Entity Framework در WPF
-WPFMessageBox فارسی/انگلیسی - با قابلیت تغییر Skin
خوب فهمیدم
utf-16 باید استفاده کنم اختلاف کم بودش مثلا 1585 رو به صورت 45 و 6 ارسال میشه که 6*256+45=1585
یه کانورت می خواد و تشخیص اینکه کلاینت متصل شده کنونی C# هست یا دلفی چون با دلفی درست کار میکنه
ممنون bermooda