OLE错误消息

时间:2013-05-01 05:26:54

标签: c# .net sql-server-ce ole

我使用ADO.Net在带有SQL Server CE 3.5 SP2的.Net Framework 4.0 Client Profile中的C#.Net 2010中编写程序。我已经通过Advanced Installer打包我的应用程序并包含先决条件:安装引导程序中的SQLServerCe 3.5 SP2,.Net Framework 4.0 Client和Windows安装程序3.1。我使用Win 8 Pro并没有安装和运行程序的问题,但是当它安装在另一台运行Win XP的PC上时,它会在启动应用程序时显示“OLE错误消息”(安装成功后)。可能是什么原因以及如何解决这个问题? (主表单加载时与数据库没有交互)。 以下是主表单的完整代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Globalization;

namespace StudentLoanArchives
{
    public partial class frmMain : Form
    {
        public frmMain()
        {
            InitializeComponent();
        }

    private void خروجToolStripMenuItem_Click(object sender, EventArgs e)
    {
        DialogResult dr = MessageBox.Show("آیا مطمئن هستید؟", "خروج از برنامه", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2, MessageBoxOptions.RtlReading);
        if (dr == DialogResult.Yes) Application.Exit();
    }

    private void عملیاتاولیهToolStripMenuItem_Click(object sender, EventArgs e)
    {
        string createTable = "CREATE TABLE Bank (bankName nvarchar(20) PRIMARY KEY NOT NULL)";
        DataBaseClass.MessageShow(DataBaseClass.ExecuteSQL(createTable), "عمليات با موفقيت انجام پذيرفت", "در انجام عمليات خطا رخ داد");
        createTable = "CREATE TABLE Student (studentNo nvarchar(12) PRIMARY KEY NOT NULL, studentFName nvarchar(50), studentLName nvarchar(50) NOT NULL)";
        DataBaseClass.MessageShow(DataBaseClass.ExecuteSQL(createTable), "عمليات با موفقيت انجام پذيرفت", "در انجام عمليات خطا رخ داد");
        createTable = "CREATE TABLE Loan (loanNo nvarchar(20) PRIMARY KEY NOT NULL, loanAmount nvarchar(15) NOT NULL, loanDate nvarchar(10), studentNo nvarchar(12) NOT NULL)";
        DataBaseClass.MessageShow(DataBaseClass.ExecuteSQL(createTable), "عمليات با موفقيت انجام پذيرفت", "در انجام عمليات خطا رخ داد");
        createTable = "CREATE TABLE Payment (payNo nvarchar(20) PRIMARY KEY NOT NULL, payAmount nvarchar(15) NOT NULL, bankName nvarchar(20) NOT NULL, payDate nvarchar(10) NOT NULL, branchCode nvarchar(10), branchName nvarchar(30), loanNo nvarchar(20), payComment ntext)";
        DataBaseClass.MessageShow(DataBaseClass.ExecuteSQL(createTable), "عمليات با موفقيت انجام پذيرفت", "در انجام عمليات خطا رخ داد");
    }

    private void frmMain_Load(object sender, EventArgs e)
    {
        PersianCalendar pc = new PersianCalendar();
        DateTime GregDate = new DateTime();
        GregDate = DateTime.Now;
        string month = pc.GetMonth(GregDate).ToString();
        string day = pc.GetDayOfMonth(GregDate).ToString();
        string weekday = pc.GetDayOfWeek(GregDate).ToString();
        switch (month)
        {
            case "1":
                month = "فروردين";
                break;
            case "2":
                month = "اردي بهشت";
                break;
            case "3":
                month = "خرداد";
                break;
            case "4":
                month = "تير";
                break;
            case "5":
                month = "مرداد";
                break;
            case "6":
                month = "شهريور";
                break;
            case "7":
                month = "مهر";
                break;
            case "8":
                month = "آبان";
                break;
            case "9":
                month = "آذر";
                break;
            case "10":
                month = "دي";
                break;
            case "11":
                month = "بهمن";
                break;
            case "12":
                month = "اسفند";
                break;
        }
        switch (weekday)
        {
            case "Sunday":
                weekday = "يك شنبه";
                break;
            case "Monday":
                weekday = "دوشنبه";
                break;
            case "Tuesday":
                weekday = "سه شنبه";
                break;
            case "Wednesday":
                weekday = "چهارشنبه";
                break;
            case "Thursday":
                weekday = "پنج شنبه";
                break;
            case "Friday":
                weekday = "جمعه";
                break;
            case "Saturday":
                weekday = "شنبه";
                break;
        }

        lblDate.Text = weekday + " " + day + " " + month + " " + pc.GetYear(GregDate).ToString();
        lblTime.Text = pc.GetHour(GregDate).ToString() + " : " + pc.GetMinute(GregDate).ToString() + " : " + pc.GetSecond(GregDate).ToString();
    }

    private void tmrTime_Tick(object sender, EventArgs e)
    {
        lblTime.Text = DateTime.Now.Hour.ToString() + " : " + DateTime.Now.Minute.ToString() + " : " + DateTime.Now.Second.ToString();
    }

    private void بانکToolStripMenuItem_Click(object sender, EventArgs e)
    {
        (new frmBanks()).ShowDialog(this);
    }

    private void دربارهToolStripMenuItem_Click(object sender, EventArgs e)
    {
        MessageBox.Show("برنامه ی ثبت وام های دانشجویی\nبرنامه نویس : بابک تبیانیان\nشماره ی پشتیبانی : 09358285821","درباره ی برنامه",MessageBoxButtons.OK,MessageBoxIcon.Information,MessageBoxDefaultButton.Button1,MessageBoxOptions.RightAlign);
    }

    private void کارکنانToolStripMenuItem_Click(object sender, EventArgs e)
    {
        (new frmStudents()).ShowDialog(this);
    }

    private void وامToolStripMenuItem_Click(object sender, EventArgs e)
    {
        (new frmLoans()).ShowDialog(this);
    }

    private void پرداختToolStripMenuItem_Click(object sender, EventArgs e)
    {
        (new frmPayments()).ShowDialog(this);
    }

    private void جستجوToolStripMenuItem_Click(object sender, EventArgs e)
    {
        (new frmQuery()).ShowDialog(this);
    }

    private void پشتيبانگيريToolStripMenuItem_Click(object sender, EventArgs e)
    {
        (new frmBackup()).ShowDialog(this);
    }

    private void بازگردانیاطلاعاتToolStripMenuItem_Click(object sender, EventArgs e)
    {
        (new frmRestore()).ShowDialog(this);
    }
}

}

0 个答案:

没有答案