(请教各位老师)关于错误:将数据发送到运行IIS的计算机失败.详细查看HRESULT
[复制链接]
大家帮帮我吧.我整了好几天了也没结果.
程序是走到同步的时候弹出的.下面是程序代码.
namespace SQLMobile2
{
public partial class Form1 : Form
{
string filename = @"\Program Files\SQLMobile\sqlmobile.sdf";//@相当于转义符否则不认识这些字符
string fname = @"F:\SQLMobileData\sqlmobile.sdf";
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
DeleteDB();
Sync();
if (sqlmobileDataSetUtil.DesignerUtil.IsRunTime())
{
// TODO: 删除此行代码以移除“sqlmobileDataSet.FlightData”的默认 AutoFill。
this.flightDataTableAdapter.Fill(this.sqlmobileDataSet.FlightData);
}
if (sqlmobileDataSetUtil.DesignerUtil.IsRunTime())
{
// TODO: 删除此行代码以移除“sqlmobileDataSet.MembershipData”的默认 AutoFill。
this.membershipDataTableAdapter.Fill(this.sqlmobileDataSet.MembershipData);
}
}
private void newMenuItemMenuItem_Click(object sender, EventArgs e)
{
membershipDataBindingSource.AddNew();
SQLMobile2.MembershipDataEditViewDialog membershipdataEditViewDialog = SQLMobile2.MembershipDataEditViewDialog.Instance(this.membershipDataBindingSource);
membershipdataEditViewDialog.ShowDialog();
}
private void membershipDataDataGrid_Click(object sender, EventArgs e)
{
SQLMobile2.MembershipDataSummaryViewDialog membershipdataSummaryViewDialog = SQLMobile2.MembershipDataSummaryViewDialog.Instance(this.membershipDataBindingSource);
membershipdataSummaryViewDialog.ShowDialog();
}
private void DeleteDB()
{
if (System.IO.File.Exists(filename))
{
System.IO.File.Delete(filename);
}
}
private void Sync()
{
//复制
SqlCeReplication repl = new SqlCeReplication();
repl.InternetUrl = @"http://192.168.0.7:8082/SQLMobile/sqlcesa30.dll";//这里换localhost不行
repl.Publisher = @"SN0102";
repl.PublisherDatabase = @"SQLMobile2";
repl.PublisherSecurityMode = SecurityType.NTAuthentication;
repl.Publication = @"SM2";
repl.Subscriber = @"SQLMobile";
repl.SubscriberConnectionString = @"Data Source='" + filename + "';Password='';Max Database Size='128';Default Lock Escalation='100';";
try
{
repl.AddSubscription(AddOption.CreateDatabase);
repl.Synchronize();//这出的错.
}
catch (SqlCeException e)
{
MessageBox.Show(e.ToString());
}
}
}
用PPC设备访问http://192.168.0.7:8082/SQLMobile/sqlcesa30.dll正常.
详细的错误是sqlceexception:无法找到指定的表FlightData可是确实有这个表呀.
public virtual int Fill(sqlmobileDataSet.MembershipDataDataTable dataTable) {
this.Adapter.SelectCommand = this.CommandCollection[0];
if ((this.ClearBeforeFill == true)) {
dataTable.Clear();
}
int returnValue = this.Adapter.Fill(dataTable);//指示到这里出错
return returnValue;
}
整个配置过程是参考天极网上的资料.
麻烦各位了.