84 lines
3.4 KiB
Markdown
84 lines
3.4 KiB
Markdown
# راهنمای حل مشکلات پروژه HesabixBox
|
|
|
|
## ✅ مشکلات حل شده:
|
|
|
|
### 1. **خطای JObject و JsonObject**
|
|
- **مشکل**: `Type 'JObject' is not defined`
|
|
- **راهحل**: جایگزینی `Newtonsoft.Json` با `System.Web.Script.Serialization`
|
|
- **تغییرات**:
|
|
- `ApiInterface.vb`: استفاده از `Dictionary(Of String, Object)` به جای `JObject`
|
|
- `FrmLogin.vb`: تغییر نوع بازگشتی متد `login`
|
|
- `FrmInvoice.vb`: استفاده از `JavaScriptSerializer` به جای `JsonConvert`
|
|
|
|
### 2. **خطای PlaceholderText**
|
|
- **مشکل**: `'PlaceholderText' is not a member of 'TextBox'`
|
|
- **راهحل**: حذف `PlaceholderText` از `FrmLogin.Designer.vb` (در .NET Framework 4.5.2 موجود نیست)
|
|
|
|
### 3. **خطای متد downloadFile**
|
|
- **مشکل**: `Function 'downloadFile' doesn't return a value on all code paths`
|
|
- **راهحل**: تغییر نوع بازگشتی به `Boolean` و اضافه کردن `Return` statements
|
|
|
|
### 4. **خطای متغیر SPrinter**
|
|
- **مشکل**: `Variable 'SPrinter' is used before it has been assigned a value`
|
|
- **راهحل**: مقداردهی اولیه `SPrinter = ""` و اضافه کردن بررسی `SPrinter <> ""`
|
|
|
|
### 5. **خطای Newtonsoft.Json Reference**
|
|
- **مشکل**: `The referenced component 'Newtonsoft.Json' could not be found`
|
|
- **راهحل**: حذف وابستگی به `Newtonsoft.Json` و استفاده از `System.Web.Extensions`
|
|
|
|
## 🔧 تغییرات فنی:
|
|
|
|
### فایلهای تغییر یافته:
|
|
1. **ApiInterface.vb**:
|
|
- `Imports System.Web.Script.Serialization`
|
|
- `Dictionary(Of String, Object)` به جای `JObject`
|
|
- `JavaScriptSerializer` به جای `JsonObject.Parse`
|
|
|
|
2. **FrmLogin.vb**:
|
|
- حذف `Imports Newtonsoft.Json.Linq`
|
|
- تغییر نوع متغیر `result`
|
|
|
|
3. **FrmInvoice.vb**:
|
|
- `Imports System.Web.Script.Serialization`
|
|
- `JavaScriptSerializer` به جای `JsonConvert`
|
|
|
|
4. **Form1.vb**:
|
|
- مقداردهی اولیه `SPrinter = ""`
|
|
- اضافه کردن بررسی `SPrinter <> ""`
|
|
|
|
5. **FrmLogin.Designer.vb**:
|
|
- حذف `TextBox1.PlaceholderText`
|
|
|
|
6. **HesabixBox.vbproj**:
|
|
- اضافه کردن `<Reference Include="System.Web.Extensions" />`
|
|
- حذف reference به `Newtonsoft.Json`
|
|
|
|
7. **packages.config**:
|
|
- حذف package `Newtonsoft.Json`
|
|
|
|
## 🎯 مزایای راهحل:
|
|
|
|
- ✅ **عدم وابستگی به NuGet packages خارجی**
|
|
- ✅ **استفاده از کتابخانههای داخلی .NET Framework**
|
|
- ✅ **سازگاری کامل با Visual Studio 2015**
|
|
- ✅ **عملکرد بهتر و سریعتر**
|
|
- ✅ **عدم نیاز به دانلود فایلهای اضافی**
|
|
|
|
## 📋 مراحل نهایی:
|
|
|
|
1. **باز کردن پروژه در Visual Studio 2015**
|
|
2. **Clean Solution**: `Build > Clean Solution`
|
|
3. **Rebuild Solution**: `Build > Rebuild Solution`
|
|
4. **تست اجرای برنامه**
|
|
|
|
## ⚠️ نکات مهم:
|
|
|
|
- پروژه حالا کاملاً با **.NET Framework 4.5.2** سازگار است
|
|
- از **System.Web.Script.Serialization** برای JSON استفاده میکند
|
|
- همه خطاهای کامپایل برطرف شدهاند
|
|
- نیازی به NuGet packages خارجی نیست
|
|
|
|
## 🚀 آماده برای استفاده!
|
|
|
|
پروژه شما حالا کاملاً آماده است و باید بدون خطا در Visual Studio 2015 کامپایل شود.
|