mirror of
https://github.com/kwsch/PKHeX
synced 2024-11-26 05:50:22 +00:00
Add QR functionality via Web (Google)
This commit is contained in:
parent
fe3b1f5650
commit
b9b553a0e9
6 changed files with 161 additions and 76 deletions
41
Misc/QR.cs
41
Misc/QR.cs
|
@ -5,6 +5,7 @@ using System.Drawing;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
|
using System.Net;
|
||||||
|
|
||||||
namespace PKHeX
|
namespace PKHeX
|
||||||
{
|
{
|
||||||
|
@ -56,6 +57,46 @@ namespace PKHeX
|
||||||
PB_QR.BackgroundImage = newpic;
|
PB_QR.BackgroundImage = newpic;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
public QR(Image qr, Image pkm, string top, string bottom, string left, string right)
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
Font font = FontLabel.Font; // PKX.getPKXFont(8);
|
||||||
|
Image preview = new Bitmap(45, 45);
|
||||||
|
using (Graphics gfx = Graphics.FromImage(preview))
|
||||||
|
{
|
||||||
|
gfx.FillRectangle(new SolidBrush(Color.White), 0, 0, preview.Width, preview.Height);
|
||||||
|
gfx.DrawImage(pkm, preview.Width / 2 - pkm.Width / 2, preview.Height / 2 - pkm.Height / 2);
|
||||||
|
}
|
||||||
|
Image pic = Util.LayerImage(qr, preview, qr.Width / 2 - preview.Width / 2, qr.Height / 2 - preview.Height / 2, 1); // Middle
|
||||||
|
// Image pic = Util.LayerImage(qr, preview, 2, 2, 1); // Top Left
|
||||||
|
// g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias;
|
||||||
|
if (ModifierKeys == Keys.Control)
|
||||||
|
{
|
||||||
|
Graphics g = Graphics.FromImage(pic);
|
||||||
|
g.DrawString(top, font, Brushes.Black, new PointF(20, 5));
|
||||||
|
g.DrawString(bottom, font, Brushes.Black, new PointF(20, pic.Width - 15));
|
||||||
|
g.DrawString(left, font, Brushes.Black, new PointF(0, 20));
|
||||||
|
g.DrawString(right, font, Brushes.Black, new PointF(pic.Width - 15, 20), new System.Drawing.StringFormat(StringFormatFlags.DirectionVertical));
|
||||||
|
|
||||||
|
PB_QR.BackgroundImage = pic;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
int stretch = 50;
|
||||||
|
Height += stretch;
|
||||||
|
Image newpic = new Bitmap(PB_QR.Width, PB_QR.Height);
|
||||||
|
Graphics g = Graphics.FromImage(newpic);
|
||||||
|
g.FillRectangle(new SolidBrush(Color.White), 0, 0, newpic.Width, newpic.Height);
|
||||||
|
g.DrawImage(pic, 0, 0);
|
||||||
|
|
||||||
|
g.DrawString(top, font, Brushes.Black, new PointF(20, qr.Height - 5));
|
||||||
|
g.DrawString(bottom, font, Brushes.Black, new PointF(20, qr.Height + 8));
|
||||||
|
g.DrawString(left.Replace(Environment.NewLine.ToString(), "/").Replace("//", " ").Replace(":/", ": "), font, Brushes.Black, new PointF(20, qr.Height + 20));
|
||||||
|
g.DrawString(right, font, Brushes.Black, new PointF(20, qr.Height + 32));
|
||||||
|
|
||||||
|
PB_QR.BackgroundImage = newpic;
|
||||||
|
}
|
||||||
|
}
|
||||||
private void PB_QR_Click(object sender, EventArgs e)
|
private void PB_QR_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
if (DialogResult.Yes != Util.Prompt(MessageBoxButtons.YesNo, "Copy QR Image to Clipboard?")) return;
|
if (DialogResult.Yes != Util.Prompt(MessageBoxButtons.YesNo, "Copy QR Image to Clipboard?")) return;
|
||||||
|
|
|
@ -11,7 +11,8 @@
|
||||||
<RootNamespace>PKHeX</RootNamespace>
|
<RootNamespace>PKHeX</RootNamespace>
|
||||||
<AssemblyName>PKHeX</AssemblyName>
|
<AssemblyName>PKHeX</AssemblyName>
|
||||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||||
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
|
<TargetFrameworkProfile>
|
||||||
|
</TargetFrameworkProfile>
|
||||||
<FileAlignment>512</FileAlignment>
|
<FileAlignment>512</FileAlignment>
|
||||||
<IsWebBootstrapper>false</IsWebBootstrapper>
|
<IsWebBootstrapper>false</IsWebBootstrapper>
|
||||||
<PublishUrl>publish\</PublishUrl>
|
<PublishUrl>publish\</PublishUrl>
|
||||||
|
@ -61,6 +62,7 @@
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Core" />
|
<Reference Include="System.Core" />
|
||||||
<Reference Include="System.Data.SqlServerCe, Version=3.5.1.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
|
<Reference Include="System.Data.SqlServerCe, Version=3.5.1.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
|
||||||
|
<Reference Include="System.Web" />
|
||||||
<Reference Include="System.Xml.Linq" />
|
<Reference Include="System.Xml.Linq" />
|
||||||
<Reference Include="System.Data.DataSetExtensions" />
|
<Reference Include="System.Data.DataSetExtensions" />
|
||||||
<Reference Include="Microsoft.CSharp" />
|
<Reference Include="Microsoft.CSharp" />
|
||||||
|
|
|
@ -1565,12 +1565,51 @@ namespace PKHeX
|
||||||
string server = "http://loadcode.projectpokemon.org/b1s1.html#"; // Rehosted with permission from LC/MS -- massive thanks!
|
string server = "http://loadcode.projectpokemon.org/b1s1.html#"; // Rehosted with permission from LC/MS -- massive thanks!
|
||||||
string qrdata = Convert.ToBase64String(ekx);
|
string qrdata = Convert.ToBase64String(ekx);
|
||||||
string message = server + qrdata;
|
string message = server + qrdata;
|
||||||
string webURL = "http://chart.apis.google.com/chart?chs=500x500&cht=qr&chl=http%3A%2F%2Floadcode.projectpokemon.org%2Fb1s1.html%23" + qrdata;
|
string webURL = "http://chart.apis.google.com/chart?chs=365x365&cht=qr&chl=" + System.Web.HttpUtility.UrlEncode("http://loadcode.projectpokemon.org/b1s1.html#" + qrdata);
|
||||||
if (DialogResult.Yes != Util.Prompt(MessageBoxButtons.YesNo, "Copy QR URL to Clipboard?")) return;
|
|
||||||
|
Image qr = null;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
System.Net.HttpWebRequest httpWebRequest = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(webURL);
|
||||||
|
System.Net.HttpWebResponse httpWebReponse = (System.Net.HttpWebResponse)httpWebRequest.GetResponse();
|
||||||
|
Stream stream = httpWebReponse.GetResponseStream();
|
||||||
|
qr = Image.FromStream(stream);
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
if (DialogResult.Yes != Util.Prompt(MessageBoxButtons.YesNo, "Unable to connect to the internet to receive QR code.", "Copy QR URL to Clipboard?"))
|
||||||
|
{
|
||||||
try { Clipboard.SetText(webURL); }
|
try { Clipboard.SetText(webURL); }
|
||||||
catch { Util.Alert("Failed to set text to Clipboard"); }
|
catch { Util.Alert("Failed to set text to Clipboard"); }
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
PKX data = new PKX(pkx, "Tabs");
|
||||||
|
string filename = data.Nickname;
|
||||||
|
if (filename != data.Species)
|
||||||
|
filename += " (" + data.Species + ")";
|
||||||
|
string s1 = String.Format("{0} [{4}] lv{3} @ {1} -- {2}", filename, data.HeldItem, data.Nature, data.Level.ToString(), data.Ability);
|
||||||
|
string s2 = String.Format("{0} / {1} / {2} / {3}", data.Move1, data.Move2, data.Move3, data.Move4);
|
||||||
|
string IVs = String.Format(
|
||||||
|
"IV:{0}{1}{2}{3}{4}{5}"
|
||||||
|
+ Environment.NewLine + Environment.NewLine +
|
||||||
|
"EV:{6}{7}{8}{9}{10}{11}",
|
||||||
|
Environment.NewLine + data.HP_IV.ToString("00"),
|
||||||
|
Environment.NewLine + data.ATK_IV.ToString("00"),
|
||||||
|
Environment.NewLine + data.DEF_IV.ToString("00"),
|
||||||
|
Environment.NewLine + data.SPA_IV.ToString("00"),
|
||||||
|
Environment.NewLine + data.SPD_IV.ToString("00"),
|
||||||
|
Environment.NewLine + data.SPE_IV.ToString("00"),
|
||||||
|
Environment.NewLine + data.HP_EV.ToString("00"),
|
||||||
|
Environment.NewLine + data.ATK_EV.ToString("00"),
|
||||||
|
Environment.NewLine + data.DEF_EV.ToString("00"),
|
||||||
|
Environment.NewLine + data.SPA_EV.ToString("00"),
|
||||||
|
Environment.NewLine + data.SPD_EV.ToString("00"),
|
||||||
|
Environment.NewLine + data.SPE_EV.ToString("00"));
|
||||||
|
new QR(qr, dragout.Image, s1, s2, IVs, "ProjectPokemon.org & PKHeX").ShowDialog();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
|
||||||
// Old Broken QR Code
|
// Old Broken QR Code
|
||||||
PKX data = new PKX(pkx, "Tabs");
|
PKX data = new PKX(pkx, "Tabs");
|
||||||
|
@ -1597,6 +1636,7 @@ namespace PKHeX
|
||||||
Environment.NewLine + data.SPE_EV.ToString("00"));
|
Environment.NewLine + data.SPE_EV.ToString("00"));
|
||||||
new QR(ekx, dragout.Image, s1, s2, IVs, "ProjectPokemon.org & PKHeX").ShowDialog();
|
new QR(ekx, dragout.Image, s1, s2, IVs, "ProjectPokemon.org & PKHeX").ShowDialog();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
private void clickFriendship(object sender, EventArgs e)
|
private void clickFriendship(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
if (ModifierKeys == Keys.Control) // prompt to reset
|
if (ModifierKeys == Keys.Control) // prompt to reset
|
||||||
|
|
86
Properties/Resources.Designer.cs
generated
86
Properties/Resources.Designer.cs
generated
|
@ -14680,7 +14680,7 @@ namespace PKHeX.Properties {
|
||||||
///! For the Menu Bar, separate the DropDown Item names with ' ; '
|
///! For the Menu Bar, separate the DropDown Item names with ' ; '
|
||||||
///!
|
///!
|
||||||
///! -----------------------------------------------------
|
///! -----------------------------------------------------
|
||||||
///- DO NO [rest of string was truncated]";.
|
///- DO NOT CHANGE THIS [rest of string was truncated]";.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
internal static string lang_de {
|
internal static string lang_de {
|
||||||
get {
|
get {
|
||||||
|
@ -14702,7 +14702,7 @@ namespace PKHeX.Properties {
|
||||||
///! For the Menu Bar, separate the DropDown Item names with ' ; '
|
///! For the Menu Bar, separate the DropDown Item names with ' ; '
|
||||||
///!
|
///!
|
||||||
///! -----------------------------------------------------
|
///! -----------------------------------------------------
|
||||||
///- DO NO [rest of string was truncated]";.
|
///- DO NOT CHANGE THIS [rest of string was truncated]";.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
internal static string lang_en {
|
internal static string lang_en {
|
||||||
get {
|
get {
|
||||||
|
@ -14724,7 +14724,7 @@ namespace PKHeX.Properties {
|
||||||
///! For the Menu Bar, separate the DropDown Item names with ' ; '
|
///! For the Menu Bar, separate the DropDown Item names with ' ; '
|
||||||
///!
|
///!
|
||||||
///! -----------------------------------------------------
|
///! -----------------------------------------------------
|
||||||
///- DO NO [rest of string was truncated]";.
|
///- DO NOT CHANGE THIS [rest of string was truncated]";.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
internal static string lang_es {
|
internal static string lang_es {
|
||||||
get {
|
get {
|
||||||
|
@ -14746,7 +14746,7 @@ namespace PKHeX.Properties {
|
||||||
///! For the Menu Bar, separate the DropDown Item names with ' ; '
|
///! For the Menu Bar, separate the DropDown Item names with ' ; '
|
||||||
///!
|
///!
|
||||||
///! -----------------------------------------------------
|
///! -----------------------------------------------------
|
||||||
///- DO NO [rest of string was truncated]";.
|
///- DO NOT CHANGE THIS [rest of string was truncated]";.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
internal static string lang_fr {
|
internal static string lang_fr {
|
||||||
get {
|
get {
|
||||||
|
@ -14768,7 +14768,7 @@ namespace PKHeX.Properties {
|
||||||
///! For the Menu Bar, separate the DropDown Item names with ' ; '
|
///! For the Menu Bar, separate the DropDown Item names with ' ; '
|
||||||
///!
|
///!
|
||||||
///! -----------------------------------------------------
|
///! -----------------------------------------------------
|
||||||
///- DO NO [rest of string was truncated]";.
|
///- DO NOT CHANGE THIS [rest of string was truncated]";.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
internal static string lang_ja {
|
internal static string lang_ja {
|
||||||
get {
|
get {
|
||||||
|
@ -15040,12 +15040,13 @@ namespace PKHeX.Properties {
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Looks up a localized string similar to If you are having issues viewing gender symbols, Options -> Toggle Unicode Text.
|
/// Looks up a localized string similar to If you are having issues viewing certain symbols: Options -> Toggle Unicode Text.
|
||||||
///
|
///
|
||||||
///
|
///
|
||||||
///// Main Window
|
///// Main Window
|
||||||
///
|
///
|
||||||
///Right Click on Nickname/Nickname box to bring up the ingame-special characters.
|
///Hold Control when dragging out the Tab PKM to save as ekx.
|
||||||
|
///Control Click on a Nickname/OT box to bring up the ingame-special characters.
|
||||||
///
|
///
|
||||||
///Control + Click on...
|
///Control + Click on...
|
||||||
///Randomize IVs: Set all IVs to max.
|
///Randomize IVs: Set all IVs to max.
|
||||||
|
@ -15053,12 +15054,12 @@ namespace PKHeX.Properties {
|
||||||
///PP Ups Label: Set all PP Ups to 3.
|
///PP Ups Label: Set all PP Ups to 3.
|
||||||
///Friendship Label: Reset Friendship
|
///Friendship Label: Reset Friendship
|
||||||
///
|
///
|
||||||
///Click on the Save File path (above Boxes): Auto-detect/Reload save.
|
///Click on the OT label to set relevant details to that of the save file.
|
||||||
///
|
///
|
||||||
///Control-Drag a Box Slot to Copy-Overwrite
|
|
||||||
///Alt-Drag a Box Slot to Delete-Overwrite
|
|
||||||
///
|
///
|
||||||
///C [rest of string was truncated]";.
|
///// Save File
|
||||||
|
///
|
||||||
|
///Click [rest of string was truncated]";.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
internal static string shortcuts {
|
internal static string shortcuts {
|
||||||
get {
|
get {
|
||||||
|
@ -19062,10 +19063,10 @@ namespace PKHeX.Properties {
|
||||||
///Tall Grass
|
///Tall Grass
|
||||||
///
|
///
|
||||||
///Dialga/Palkia
|
///Dialga/Palkia
|
||||||
|
///Cave/Hall of Origin
|
||||||
|
///
|
||||||
///Surfing/Fishing
|
///Surfing/Fishing
|
||||||
///
|
///
|
||||||
///
|
|
||||||
///
|
|
||||||
///Building
|
///Building
|
||||||
///Marsh/Safari
|
///Marsh/Safari
|
||||||
///
|
///
|
||||||
|
@ -19095,10 +19096,10 @@ namespace PKHeX.Properties {
|
||||||
///Tall Grass
|
///Tall Grass
|
||||||
///
|
///
|
||||||
///Dialga/Palkia
|
///Dialga/Palkia
|
||||||
|
///Cave/Hall of Origin
|
||||||
|
///
|
||||||
///Surfing/Fishing
|
///Surfing/Fishing
|
||||||
///
|
///
|
||||||
///
|
|
||||||
///
|
|
||||||
///Building
|
///Building
|
||||||
///Marsh/Safari
|
///Marsh/Safari
|
||||||
///
|
///
|
||||||
|
@ -19128,10 +19129,10 @@ namespace PKHeX.Properties {
|
||||||
///Tall Grass
|
///Tall Grass
|
||||||
///
|
///
|
||||||
///Dialga/Palkia
|
///Dialga/Palkia
|
||||||
|
///Cave/Hall of Origin
|
||||||
|
///
|
||||||
///Surfing/Fishing
|
///Surfing/Fishing
|
||||||
///
|
///
|
||||||
///
|
|
||||||
///
|
|
||||||
///Building
|
///Building
|
||||||
///Marsh/Safari
|
///Marsh/Safari
|
||||||
///
|
///
|
||||||
|
@ -19161,10 +19162,10 @@ namespace PKHeX.Properties {
|
||||||
///Tall Grass
|
///Tall Grass
|
||||||
///
|
///
|
||||||
///Dialga/Palkia
|
///Dialga/Palkia
|
||||||
|
///Cave/Hall of Origin
|
||||||
|
///
|
||||||
///Surfing/Fishing
|
///Surfing/Fishing
|
||||||
///
|
///
|
||||||
///
|
|
||||||
///
|
|
||||||
///Building
|
///Building
|
||||||
///Marsh/Safari
|
///Marsh/Safari
|
||||||
///
|
///
|
||||||
|
@ -19194,10 +19195,10 @@ namespace PKHeX.Properties {
|
||||||
///Tall Grass
|
///Tall Grass
|
||||||
///
|
///
|
||||||
///Dialga/Palkia
|
///Dialga/Palkia
|
||||||
|
///Cave/Hall of Origin
|
||||||
|
///
|
||||||
///Surfing/Fishing
|
///Surfing/Fishing
|
||||||
///
|
///
|
||||||
///
|
|
||||||
///
|
|
||||||
///Building
|
///Building
|
||||||
///Marsh/Safari
|
///Marsh/Safari
|
||||||
///
|
///
|
||||||
|
@ -19227,10 +19228,10 @@ namespace PKHeX.Properties {
|
||||||
///Tall Grass
|
///Tall Grass
|
||||||
///
|
///
|
||||||
///Dialga/Palkia
|
///Dialga/Palkia
|
||||||
|
///Cave/Hall of Origin
|
||||||
|
///
|
||||||
///Surfing/Fishing
|
///Surfing/Fishing
|
||||||
///
|
///
|
||||||
///
|
|
||||||
///
|
|
||||||
///Building
|
///Building
|
||||||
///Marsh/Safari
|
///Marsh/Safari
|
||||||
///
|
///
|
||||||
|
@ -19260,10 +19261,10 @@ namespace PKHeX.Properties {
|
||||||
///Tall Grass
|
///Tall Grass
|
||||||
///
|
///
|
||||||
///Dialga/Palkia
|
///Dialga/Palkia
|
||||||
|
///Cave/Hall of Origin
|
||||||
|
///
|
||||||
///Surfing/Fishing
|
///Surfing/Fishing
|
||||||
///
|
///
|
||||||
///
|
|
||||||
///
|
|
||||||
///Building
|
///Building
|
||||||
///Marsh/Safari
|
///Marsh/Safari
|
||||||
///
|
///
|
||||||
|
@ -19293,10 +19294,10 @@ namespace PKHeX.Properties {
|
||||||
///Tall Grass
|
///Tall Grass
|
||||||
///
|
///
|
||||||
///Dialga/Palkia
|
///Dialga/Palkia
|
||||||
|
///Cave/Hall of Origin
|
||||||
|
///
|
||||||
///Surfing/Fishing
|
///Surfing/Fishing
|
||||||
///
|
///
|
||||||
///
|
|
||||||
///
|
|
||||||
///Building
|
///Building
|
||||||
///Marsh/Safari
|
///Marsh/Safari
|
||||||
///
|
///
|
||||||
|
@ -23235,18 +23236,18 @@ namespace PKHeX.Properties {
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Looks up a localized string similar to
|
/// Looks up a localized string similar to
|
||||||
///サファイア
|
///蓝宝石
|
||||||
///ルビー
|
///红宝石
|
||||||
///エメラルド
|
///绿宝石
|
||||||
///ファイアレッド
|
///火红
|
||||||
///リーフグリーン
|
///叶绿
|
||||||
///
|
///
|
||||||
///ハートゴールド
|
///心金
|
||||||
///ソウルシルバー
|
///魂银
|
||||||
///
|
///
|
||||||
///ダイヤモンド
|
///钻石
|
||||||
///パール
|
///珍珠
|
||||||
///プラチナ
|
///白金
|
||||||
///
|
///
|
||||||
///
|
///
|
||||||
///コロシアム/XD
|
///コロシアム/XD
|
||||||
|
@ -23254,14 +23255,15 @@ namespace PKHeX.Properties {
|
||||||
///
|
///
|
||||||
///
|
///
|
||||||
///
|
///
|
||||||
///ホワイト
|
///白
|
||||||
///ブラック
|
///黑
|
||||||
///ホワイト2
|
///白2
|
||||||
///ブラック2
|
///黑2
|
||||||
///X
|
///X
|
||||||
///Y
|
///Y
|
||||||
///AS
|
///AS
|
||||||
///OR.
|
///OR
|
||||||
|
///.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
internal static string text_Games_zh {
|
internal static string text_Games_zh {
|
||||||
get {
|
get {
|
||||||
|
|
2
Properties/Settings.Designer.cs
generated
2
Properties/Settings.Designer.cs
generated
|
@ -1,7 +1,7 @@
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
// <auto-generated>
|
// <auto-generated>
|
||||||
// This code was generated by a tool.
|
// This code was generated by a tool.
|
||||||
// Runtime Version:4.0.30319.296
|
// Runtime Version:4.0.30319.17929
|
||||||
//
|
//
|
||||||
// Changes to this file may cause incorrect behavior and will be lost if
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
// the code is regenerated.
|
// the code is regenerated.
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="utf-8" ?>
|
<?xml version="1.0"?>
|
||||||
<configuration>
|
<configuration>
|
||||||
<configSections>
|
<configSections>
|
||||||
</configSections>
|
</configSections>
|
||||||
<connectionStrings />
|
<connectionStrings/>
|
||||||
</configuration>
|
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup></configuration>
|
||||||
|
|
Loading…
Reference in a new issue