本文整理汇总了C#中Application.Resolve方法的典型用法代码示例。如果您正苦于以下问题:C# Application.Resolve方法的具体用法?C# Application.Resolve怎么用?C# Application.Resolve使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Application
的用法示例。
在下文中一共展示了Application.Resolve方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CleanDover
internal static Application CleanDover(bool dropTable)
{
Application doverApp = new Application();
var company = doverApp.Resolve<SAPbobsCOM.Company>();
var app = doverApp.Resolve<SAPbouiCOM.Application>();
Recordset rs = (dropTable ? null : (Recordset)company.GetBusinessObject(BoObjectTypes.BoRecordset));
UserTablesMD ut = (!dropTable ? null : (UserTablesMD)company.GetBusinessObject(BoObjectTypes.oUserTables));
try
{
if (cleaned)
{
// For some reason VS holds reference for unloaded appdomains, for debug reason. Clean on the first run.
string appFolder = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "Dover");
if (Directory.Exists(appFolder))
{
cleanAllFiles(appFolder);
}
cleaned = true;
}
if (!dropTable)
{
rs.DoQuery("DELETE FROM \"@DOVER_MODULES\"");
rs.DoQuery("DELETE FROM \"@DOVER_MODULES_BIN\"");
rs.DoQuery("DELETE FROM \"@DOVER_MODULES_DEP\"");
rs.DoQuery("DELETE FROM \"@DOVER_MODULES_USER\"");
rs.DoQuery("DELETE FROM \"@DOVER_LOGS\"");
rs.DoQuery("DELETE FROM \"@DOVER_LICENSE\"");
rs.DoQuery("DELETE FROM \"@DOVER_LICENSE_BIN\"");
}
else
{
removeTable(ut, "DOVER_MODULES", app, company);
removeTable(ut, "DOVER_MODULES_BIN", app, company);
removeTable(ut, "DOVER_MODULES_DEP", app, company);
removeTable(ut, "DOVER_MODULES_USER", app, company);
removeTable(ut, "DOVER_LOGS", app, company);
removeTable(ut, "DOVER_LICENSE", app, company);
removeTable(ut, "DOVER_LICENSE_BIN", app, company);
}
}
finally
{
if (rs != null)
System.Runtime.InteropServices.Marshal.ReleaseComObject(rs);
if (ut != null)
System.Runtime.InteropServices.Marshal.ReleaseComObject(ut);
}
return doverApp;
}