using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Windows; using ESRI.ArcGIS.esriSystem;
using System.Xml.Serialization;
using System.IO;
using SWGW.Properties;
using System.Diagnostics;
namespace SWGW
{
/// <summary>
/// App.xaml 的交互逻辑
/// </summary>
public partial class App : Application
{ #region License
protected override void OnStartup(StartupEventArgs e)
{
SettingsManager.OnStartup();
base.OnStartup(e); if (!LicenseManager.InitializeLicense.InitializeEngineLicense())
{
MessageBox.Show("无法初始化ArcGIS Engine的授权或地球扩展。截止...");
} }
#endregion #region 私有类
static class SettingsManager
{
#region Class Members
static Settings settings = new Settings();
const string applicationDirectory = "SWGW";
//配置文件名称
const string settingsFileName = "XXXX.xml";
#endregion Class Members #region Constructor static SettingsManager()
{
EnsureDirectoryExists();
} #endregion Constructor #region Properties public static Settings ApplicationSettings
{
get { return settings; }
} #endregion Properties #region Startup, Exit public static void OnStartup()
{
LoadSettings();
} public static void OnExit()
{
SaveSettings();
} #endregion Overrides #region Other Functions static string SettingsFileName
{
get
{
return Path.Combine(
Path.Combine(
Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData),
applicationDirectory),
settingsFileName);
}
} static void LoadSettings()
{
Settings tmp; try
{
XmlSerializer xml = new XmlSerializer(typeof(Settings)); using (Stream stream = new System.IO.FileStream(SettingsFileName,
FileMode.Open, FileAccess.Read, FileShare.Read))
{
tmp = (Settings)xml.Deserialize(stream);
}
}
catch (Exception e)
{
Trace.WriteLine(e.Message);
return;
} settings = tmp;
} static void SaveSettings()
{
try
{
XmlSerializer xml = new XmlSerializer(typeof(Settings)); using (Stream stream = new System.IO.FileStream(SettingsFileName,
FileMode.Create, FileAccess.Write, FileShare.None))
{
xml.Serialize(stream, settings);
}
}
catch (Exception e)
{
Trace.WriteLine(e.Message);
}
} [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1031:DoNotCatchGeneralExceptionTypes")]
static void EnsureDirectoryExists()
{
try
{
DirectoryInfo info = new DirectoryInfo(
Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData),
applicationDirectory)); if (!info.Exists)
{
info.Create();
}
}
catch (Exception ex)
{
Trace.WriteLine(ex.Message);
}
} #endregion Other Functions
} #endregion
}
}

WPF使用ARCGIS App文件配置Cs后台文件的更多相关文章

  1. webpack4 单入口文件配置 多入口文件配置 以及常用的配置

    单入口文件配置 webpack.config.js const path = require('path'); const HtmlWebpackPlugin = require('html-webp ...

  2. 虚拟主机ip配置,nginx.conf文件配置及日志文件切割

    今天粗略整理了一下虚拟主机配置,nginx.conf文件的配置,及日志文件的切割,记录如下: nginx虚拟主机配置:1.IP地址配置,2.绑定ip地址和虚拟主机详情:1.ip地址的配置:ifconf ...

  3. maven中pom文件配置解决资源文件的编码问题

    <build> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId& ...

  4. Vue插件配置和 后台交互

    Vue插件配置和 后台交互 一.全局配置静态文件(csss, js..) 1.1 全局配置css文件 创建css文件 在main.js配置css文件 // 配置全局css样式 // 方式一 impor ...

  5. mybatis 自动生成文件配置

    maven 依赖配置: <!-- sql server --><dependency> <groupId>com.microsoft.sqlserver</g ...

  6. Django-03-静态文件配置

    一.django静态文件配置原理 静态文件配置就是为了让用户请求时django服务器能找到静态文件返回. 首先要理解几个概念: 媒体文件:用户上传的文件 静态文件:css,js,image等 开发环境 ...

  7. informatica 参数文件配置

    Informatica 中 parameter file 参数文件配置规则: 参数文件的头部内容 [Global] All Integration Services, Integration Serv ...

  8. Django学习——静态文件配置、request对象方法、pycharm如何链接数据库、Django如何指定数据库、Django orm操作

    静态文件配置 # 1.静态文件 网站所使用的已经提前写好的文件 css文件 js文件 img文件 第三方文件 我们在存储静态文件资源的时候一般默认都是放在static文件夹下 # 2.Django静态 ...

  9. c#Winform程序调用app.config文件配置数据库连接字符串 SQL Server文章目录 浅谈SQL Server中统计对于查询的影响 有关索引的DMV SQL Server中的执行引擎入门 【译】表变量和临时表的比较 对于表列数据类型选择的一点思考 SQL Server复制入门(一)----复制简介 操作系统中的进程与线程

    c#Winform程序调用app.config文件配置数据库连接字符串 你新建winform项目的时候,会有一个app.config的配置文件,写在里面的<connectionStrings n ...

随机推荐

  1. hbase+hadoop+hdfs集群搭建 集成spring

    序言 最近公司一个汽车项目想用hbase做存储,然后就有了这篇文字,来,来,来, 带你一起征服hbase,并推荐一本书<hbase权威指南> 这是一本极好的hbase入门书籍,我花了一个晚 ...

  2. 关于自建yum源拾遗

    yum参数解释[updates]--->源name=CentOS-$releasever - Updates --->源的名字baseurl=http://mirror.centos.or ...

  3. 安装 Apache 源代码包

    把自己在网易博客的文章迁移过来 cd /lamp/httpd-2.2.9 ./configure --prefix=/usr/local/apache2/ --sysconfdir=/usr/loca ...

  4. windows系统中,创建临时环境变量

    以servlet-api.jar 包为例 set classpath=%classpath%;C:\apache-tomcat-6.0.37\lib\servlet-api.jar

  5. ZSTU OJ 4273 玩具

    枚举,二分,$RMQ$. 肯定是将连续一段中最大值免去花费,枚举起点之后,二分终点即可.可以证明单调性. #include<map> #include<set> #includ ...

  6. Java九大内置对象

    Java九大内置对象    内置对象/作用域(每一种作用域的生命周期是不一样的):        1, application 全局作用域        2, session 会话作用域       ...

  7. 0818JavaWeb基础

    Java Web基础 JSP JSP --- Java Server Page        在服务器上运行的页面 动态网页(JSP网页)        与后台有数据交换的网页             ...

  8. Java多线程-run方法与start方法的区别

    package com.interview; /** * java多线程的两种实现方式以及run.start方法的区别 * @author MEI.LIU * */ public class Thre ...

  9. JZYZOJ1355 [usaco2007]奶牛赛跑 矩阵乘法 离散化

    http://172.20.6.3/Problem_Show.asp?id=1355   写的时候本来想离散化,“1000^2的数组放一两个到函数里而已嘛,指定承受得住”,然后没离散化,然后就爆栈了, ...

  10. [xsy1144]选物品

    题意:给定$a_{1\cdots n},b_{1\cdots n}$,询问是给定$l,r$,找出$a',b'$使得$\sum\limits_{i=l}^r\max(\left|a'-a_i\right ...