This commit is contained in:
世元 李
2020-03-17 01:17:30 +08:00
parent cf3a5c1d7d
commit 6f98aee80a
108 changed files with 2279 additions and 279 deletions

BIN
cs2_chs/03.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

36
cs2_chs/Advance.xaml Normal file
View File

@@ -0,0 +1,36 @@
<Window x:Class="cs2_chs.Advance"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:cs2_chs"
mc:Ignorable="d"
Title="Advance" Height="389.052" Width="712.641" ResizeMode="NoResize" MouseMove="Window_MouseMove">
<Grid Margin="0,0,0,0.2" HorizontalAlignment="Left" Width="703">
<Grid.Background>
<ImageBrush ImageSource="03.png"/>
</Grid.Background>
<GroupBox Header="提取模式" HorizontalAlignment="Left" Height="82" Margin="52,116,0,0" VerticalAlignment="Top" Width="144"/>
<TextBox x:Name="StartUpEdit" HorizontalAlignment="Left" Height="30" Margin="96,10,0,0" TextWrapping="Wrap" Text="TextBox" VerticalAlignment="Top" Width="163" FontSize="22" TextChanged="StartUpEdit_TextChanged"/>
<TextBlock HorizontalAlignment="Left" Margin="6,20,0,0" TextWrapping="Wrap" Text="启动目标:" VerticalAlignment="Top" Height="29" FontSize="16"/>
<Button Content="Apply" HorizontalAlignment="Left" Margin="593,317,0,0" VerticalAlignment="Top" Width="101" Height="32" FontSize="20" Click="Button_Click">
<Button.Background>
<ImageBrush ImageSource="01.jpg"/>
</Button.Background>
</Button>
<TextBlock HorizontalAlignment="Left" Margin="6,50,0,0" TextWrapping="Wrap" Text="函数地址:" VerticalAlignment="Top" Height="29" FontSize="16"/>
<TextBox x:Name="AddressEdit" HorizontalAlignment="Left" Height="30" Margin="96,45,0,0" TextWrapping="Wrap" Text="TextBox" VerticalAlignment="Top" Width="163" FontSize="22" TextChanged="AddressEdit_TextChanged"/>
<CheckBox x:Name="EnvioMode" Content="暴力替换" HorizontalAlignment="Left" Margin="10,95,0,0" VerticalAlignment="Top" Height="16" Click="EnvioMode_Click"/>
<RadioButton x:Name="OM_GPY" Content="GetGlyphOutLine" HorizontalAlignment="Left" Margin="76,148,0,0" VerticalAlignment="Top" Checked="OM_GPY_Checked"/>
<RadioButton x:Name="OM_TOT" Content="TextOut" HorizontalAlignment="Left" Margin="76,168,0,0" VerticalAlignment="Top" Checked="OM_TOT_Checked"/>
<TextBox x:Name="OutPutLog" HorizontalAlignment="Left" Height="133" Margin="52,216,0,0" TextWrapping="Wrap" Text="TextBox" VerticalAlignment="Top" Width="373">
<TextBox.Background>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#67DBFEFF" Offset="0.528"/>
<GradientStop Color="#FF00FAFF" Offset="1"/>
</LinearGradientBrush>
</TextBox.Background>
</TextBox>
<TextBlock HorizontalAlignment="Left" Margin="2,198,0,0" TextWrapping="Wrap" Text="输出记录:" VerticalAlignment="Top"/>
</Grid>
</Window>

119
cs2_chs/Advance.xaml.cs Normal file
View File

@@ -0,0 +1,119 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
namespace cs2_chs
{
/// <summary>
/// Advance.xaml 的交互逻辑
/// </summary>
public partial class Advance : Window
{
public bool enChanged = false;
public Advance()
{
InitializeComponent();
this.Closing += Window_Closing;
}
private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
e.Cancel = true;
this.Hide();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
if (!enChanged)
return;
try
{
uint test = Convert.ToUInt32(AddressEdit.Text, 16);
MainWindow.initdata.StartUp = StartUpEdit.Text;
MainWindow.initdata.Addr = Convert.ToUInt32(AddressEdit.Text, 16);
MainWindow.initdata.Envio = EnvioMode.IsChecked == true ? true : false;
AddressEdit.Foreground = new SolidColorBrush(Colors.Black);
StartUpEdit.Foreground = new SolidColorBrush(Colors.Black);
EnvioMode.Foreground = new SolidColorBrush(Colors.Black);
}
catch(Exception err)
{
string msg="Error!\nPlease check if the expression that you entered is valid.\n"+ err.ToString();
MessageBox.Show(msg, "error", MessageBoxButton.OK, MessageBoxImage.Error);
return;
}
if (MainWindow.initdata.Envio)
{
OM_GPY.IsEnabled = true;
OM_TOT.IsEnabled = true;
OutPutLog.IsEnabled = true;
MainWindow.EndReplace();
}
else
{
OM_GPY.IsEnabled = false;
OM_TOT.IsEnabled = false;
OutPutLog.IsEnabled = false;
MainWindow.StartReplace();
}
MessageBox.Show("👴知道🌶!\n🍋の🐍☞已经应用🌶\n暴力提取之外的设置将会在下次启动时按照更改后的设置工作。");
}
private void AddressEdit_TextChanged(object sender, TextChangedEventArgs e)
{
AddressEdit.Foreground = new SolidColorBrush(Colors.Red);
enChanged = true;
}
private void StartUpEdit_TextChanged(object sender, TextChangedEventArgs e)
{
StartUpEdit.Foreground= new SolidColorBrush(Colors.Red);
enChanged = true;
}
private void EnvioMode_Click(object sender, RoutedEventArgs e)
{
EnvioMode.Foreground = new SolidColorBrush(Colors.Red);
enChanged = true;
}
private void OM_GPY_Checked(object sender, RoutedEventArgs e)
{
if (MainWindow.initdata.VioMode == 0)
return;
MainWindow.initdata.VioMode = 0;
unsafe
{
(*(int*)MainWindow.ppMode) = MainWindow.initdata.VioMode;
}
MainWindow.ChangeTToG();
}
private void OM_TOT_Checked(object sender, RoutedEventArgs e)
{
if (MainWindow.initdata.VioMode == 1)
return;
MainWindow.initdata.VioMode = 1;
unsafe
{
(*(int*)MainWindow.ppMode) = MainWindow.initdata.VioMode;
}
MainWindow.ChangeGToT();
}
private void Window_MouseMove(object sender, MouseEventArgs e)
{
unsafe
{
string loacl = new string((char*)MainWindow.ns_str);
OutPutLog.Text = loacl;
}
}
}
}

View File

@@ -6,7 +6,6 @@ using System.Linq;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Media;
namespace cs2_chs
{
/// <summary>
@@ -15,28 +14,23 @@ namespace cs2_chs
public partial class App : Application
{
}
public class ImageButton : System.Windows.Controls.Button
{
/// <summary>
/// 图片
/// </summary>
public static readonly DependencyProperty ImageProperty = DependencyProperty.Register("Image", typeof(ImageSource), typeof(ImageButton),
new PropertyMetadata(null));
/// <summary>
/// 图片的宽度
/// </summary>
public static readonly DependencyProperty ImageWidthProperty = DependencyProperty.Register("ImageWidth", typeof(double), typeof(ImageButton),
new PropertyMetadata(double.NaN));
/// <summary>
/// 图片的高度
/// </summary>
public static readonly DependencyProperty ImageHeightProperty = DependencyProperty.Register("ImageHeight", typeof(double), typeof(ImageButton),
new PropertyMetadata(double.NaN));
/// <summary>
/// 构造函数
/// </summary>
@@ -45,7 +39,6 @@ namespace cs2_chs
DefaultStyleKeyProperty.OverrideMetadata(typeof(ImageButton),
new System.Windows.FrameworkPropertyMetadata(typeof(ImageButton)));
}
/// <summary>
/// 设置图片
/// </summary>
@@ -60,7 +53,6 @@ namespace cs2_chs
SetValue(ImageProperty, value);
}
}
/// <summary>
/// 图片宽度(属性)
/// </summary>
@@ -75,7 +67,6 @@ namespace cs2_chs
SetValue(ImageWidthProperty, value);
}
}
/// <summary>
/// 图片高度(属性)
/// </summary>
@@ -90,6 +81,5 @@ namespace cs2_chs
SetValue(ImageHeightProperty, value);
}
}
}
}

View File

@@ -6,23 +6,18 @@ using System.Threading.Tasks;
using System.Runtime.InteropServices;
using System.IO;
using Microsoft.IdentityModel.Logging;
namespace cs2_chs
{
class DllTools
{
[DllImport("kernel32.dll")]
public static extern uint GetLastError();
[DllImport("kernel32.dll", EntryPoint = "LoadLibraryEx", SetLastError = true)]
public static extern int LoadLibraryEx(string lpFileName, IntPtr hReservedNull, LoadLibraryFlags dwFlags);
[DllImport("Kernel32", EntryPoint = "GetProcAddress", SetLastError = true)]
public static extern int GetProcAddress(int handle, string funcname);
[DllImport("Kernel32", EntryPoint = "FreeLibrary", SetLastError = true)]
private static extern int FreeLibrary(int handle);
[DllImport("kernel32.dll", EntryPoint = "GetModuleHandleA", SetLastError = true)]
public static extern int GetModuleHandleA(string lpFileName);
public static Delegate GetFunctionAddress(int dllModule, string functionName, Type t)
@@ -33,8 +28,6 @@ namespace cs2_chs
else
return Marshal.GetDelegateForFunctionPointer(new IntPtr(address), t);
}
public static Delegate GetDelegateFromIntPtr(IntPtr address, Type t)
{
if (address == IntPtr.Zero)
@@ -42,8 +35,6 @@ namespace cs2_chs
else
return Marshal.GetDelegateForFunctionPointer(address, t);
}
public static Delegate GetDelegateFromIntPtr(int address, Type t)
{
if (address == 0)
@@ -51,25 +42,19 @@ namespace cs2_chs
else
return Marshal.GetDelegateForFunctionPointer(new IntPtr(address), t);
}
public static int LoadSDK(string lpFileName)
{
if (File.Exists(lpFileName))
{
var hReservedNull = IntPtr.Zero;
var dwFlags = LoadLibraryFlags.LOAD_WITH_ALTERED_SEARCH_PATH;
var result = LoadLibraryEx(lpFileName, hReservedNull, dwFlags);
var errCode = GetLastError();
LogHelper.LogInformation($"LoadSDK Result:{result}, ErrorCode: {errCode}");
return result;
}
return 0;
}
public static int ReleaseSDK(int handle)
{
try
@@ -90,59 +75,48 @@ namespace cs2_chs
return -1;
}
}
public enum LoadLibraryFlags : uint
{
/// <summary>
/// DONT_RESOLVE_DLL_REFERENCES
/// </summary>
DONT_RESOLVE_DLL_REFERENCES = 0x00000001,
/// <summary>
/// LOAD_IGNORE_CODE_AUTHZ_LEVEL
/// </summary>
LOAD_IGNORE_CODE_AUTHZ_LEVEL = 0x00000010,
/// <summary>
/// LOAD_LIBRARY_AS_DATAFILE
/// </summary>
LOAD_LIBRARY_AS_DATAFILE = 0x00000002,
/// <summary>
/// LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE
/// </summary>
LOAD_LIBRARY_AS_DATAFILE_EXCLUSIVE = 0x00000040,
/// <summary>
/// LOAD_LIBRARY_AS_IMAGE_RESOURCE
/// </summary>
LOAD_LIBRARY_AS_IMAGE_RESOURCE = 0x00000020,
/// <summary>
/// LOAD_LIBRARY_SEARCH_APPLICATION_DIR
/// </summary>
LOAD_LIBRARY_SEARCH_APPLICATION_DIR = 0x00000200,
/// <summary>
/// LOAD_LIBRARY_SEARCH_DEFAULT_DIRS
/// </summary>
LOAD_LIBRARY_SEARCH_DEFAULT_DIRS = 0x00001000,
/// <summary>
/// LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR
/// </summary>
LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR = 0x00000100,
/// <summary>
/// LOAD_LIBRARY_SEARCH_SYSTEM32
/// </summary>
LOAD_LIBRARY_SEARCH_SYSTEM32 = 0x00000800,
/// <summary>
/// LOAD_LIBRARY_SEARCH_USER_DIRS
/// </summary>
LOAD_LIBRARY_SEARCH_USER_DIRS = 0x00000400,
/// <summary>
/// LOAD_WITH_ALTERED_SEARCH_PATH
/// </summary>
@@ -155,34 +129,21 @@ namespace cs2_chs
public static extern int GetModuleHandle(string lpModuleName);
[DllImport("kernel32.dll", EntryPoint = "ReadProcessMemory")]
public static extern int _MemoryReadByteSet(int hProcess, int lpBaseAddress, byte[] lpBuffer, int nSize, int lpNumberOfBytesRead);
[DllImport("kernel32.dll", EntryPoint = "ReadProcessMemory")]
public static extern int _MemoryReadInt32(int hProcess, int lpBaseAddress, ref int lpBuffer, int nSize, int lpNumberOfBytesRead);
[DllImport("kernel32.dll", EntryPoint = "WriteProcessMemory")]
public static extern int _MemoryWriteByteSet(int hProcess, int lpBaseAddress, byte[] lpBuffer, int nSize, int lpNumberOfBytesWritten);
[DllImport("kernel32.dll", EntryPoint = "WriteProcessMemory")]
public static extern int _MemoryWriteInt32(int hProcess, int lpBaseAddress, ref int lpBuffer, int nSize, int lpNumberOfBytesWritten);
[DllImport("kernel32.dll", EntryPoint = "GetCurrentProcess")]
public static extern int GetCurrentProcess();
[DllImport("kernel32.dll", EntryPoint = "OpenProcess")]
public static extern int OpenProcess(int dwDesiredAccess, int bInheritHandle, int dwProcessId);
[DllImport("kernel32.dll", EntryPoint = "CloseHandle")]
public static extern int CloseHandle(int hObject);
[DllImport("kernel32.dll", EntryPoint = "RtlMoveMemory")]
public static extern int _CopyMemory_ByteSet_Float(ref float item, ref byte source, int length);
const int PROCESS_POWER_MAX = 2035711;
/// <summary>
/// 读内存整数型
/// </summary>
@@ -204,7 +165,6 @@ namespace cs2_chs
return num;
}
}
/// <summary>
/// 写内存整数型
/// </summary>
@@ -219,7 +179,6 @@ namespace cs2_chs
MProcess.CloseHandle(handle);
return num2 != 0;
}
/// <summary>
/// 读内存小数型
/// </summary>
@@ -241,7 +200,6 @@ namespace cs2_chs
return MProcess.GetFloatFromByteSet(array, 0);
}
}
/// <summary>
/// 写内存小数型
/// </summary>
@@ -256,7 +214,6 @@ namespace cs2_chs
//byte[] byteSet = Encoding.GetEncoding("gb2312").GetBytes(value.ToString());
return MProcess.WriteMemoryByteSet(pID, bAddress, byteSet, 0);
}
/// <summary>
/// 写内存字节集
/// </summary>
@@ -273,7 +230,6 @@ namespace cs2_chs
//MProcess.CloseHandle(pID);
return tmp != 0;
}
/// <summary>
/// 取空白字节集
/// </summary>
@@ -292,7 +248,6 @@ namespace cs2_chs
}
return Encoding.UTF8.GetBytes(text);
}
/// <summary>
/// 取进程句柄
/// </summary>
@@ -309,7 +264,6 @@ namespace cs2_chs
return MProcess.OpenProcess(PROCESS_POWER_MAX, 0, pID);
}
}
/// <summary>
/// 字节集转小数型
/// </summary>
@@ -322,7 +276,6 @@ namespace cs2_chs
MProcess._CopyMemory_ByteSet_Float(ref result, ref sourceValue[index], 4);
return result;
}
/// <summary>
/// 获取字节集
/// </summary>

View File

@@ -3,11 +3,9 @@ using System;
using System.Runtime.InteropServices;
using System.Windows.Input;
using System.Windows.Interop;
namespace cs2_chs
{
class HotKeyWinApi
{
}
}

5
cs2_chs/Init.xml Normal file
View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8" ?>
<Init>
<StartUp>cs2.exe</StartUp>
<Addr>5FC1C0</Addr>
</Init>

94
cs2_chs/InitData.cs Normal file
View File

@@ -0,0 +1,94 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Linq;
namespace cs2_chs
{
public class InitData
{
public XDocument doc;
public IEnumerable<XNode> atr;
private uint addr;
private string startUp;
private bool enVio;
private int vioMode;
public bool successedLoad = false;
public int VioMode
{
get
{
return vioMode;
}
set
{
vioMode = value;
doc.Root.Element("viom").Value = Convert.ToString(value, 10);
doc.Save("Init.xml");
}
}
public bool Envio
{
get
{
return enVio;
}
set
{
enVio = value;
doc.Root.Element("vio").Value = value ? "true" : "false";
doc.Save("Init.xml");
}
}
public string StartUp {
get
{
return startUp;
}
set
{
startUp = value;
doc.Root.Element("StartUp").Value = value;
doc.Save("Init.xml");
}
}
public uint Addr
{
get
{
return addr;
}
set
{
addr = value;
doc.Root.Element("Addr").Value = Convert.ToString(value, 16);
doc.Save("Init.xml");
}
}
public InitData()
{
try
{
doc = XDocument.Load("Init.xml");
atr = doc.Root.Nodes();
startUp = doc.Root.Element("StartUp").Value;
addr = Convert.ToUInt32(doc.Root.Element("Addr").Value, 16);
enVio = (doc.Root.Element("vio").Value == "true" ? true : false);
vioMode = Convert.ToInt32(doc.Root.Element("viom").Value, 10);
}
catch (Exception e)
{
successedLoad = false;
return;
}
successedLoad = true;
}
~InitData()
{
}
}
}

BIN
cs2_chs/Logo.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

View File

@@ -5,7 +5,7 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:cs2_chs"
mc:Ignorable="d"
Title="MainWindow" Height="200" Width="600" ResizeMode="NoResize" Visibility="Visible">
Title="Text Controler" Height="200" Width="600" ResizeMode="NoResize" Visibility="Visible" UseLayoutRounding="False">
<Grid Loaded="Grid_Loaded" MouseUp="Grid_MouseUp" MouseDown="Grid_MouseDown" Unloaded="Grid_Unloaded">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="74*"/>
@@ -51,7 +51,7 @@
<RoutedUICommand x:Key="ShowMainWindow" Text="ShowMainWindow" />
</Window.Resources>
<Window.InputBindings>
<KeyBinding Modifiers="Alt" Key="N" Command="{StaticResource ShowMainWindow}"/>
<KeyBinding Modifiers="Alt" Key="A" Command="{StaticResource ShowMainWindow}"/>
</Window.InputBindings>
<Window.CommandBindings>
<CommandBinding Command="{StaticResource ShowMainWindow}"

View File

@@ -13,11 +13,9 @@ using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Runtime.InteropServices;
using System.Windows.Threading;
using System.Messaging;
namespace cs2_chs
{
/// <summary>
@@ -31,31 +29,45 @@ namespace cs2_chs
{
if (index > str.Length)
return ' ';
string res = str.Substring(index, 1);
return Convert.ToChar(res);
}
}
public partial class MainWindow : Window
{
//TestA
public static InitData initdata = new InitData();
public Advance AdvanceSetting = new Advance();//ChangeGToT
[DllImport("cs2_patch.dll", EntryPoint = "ChangeGToT")]
public static extern void ChangeGToT();
[DllImport("cs2_patch.dll", EntryPoint = "ChangeTToG")]
public static extern void ChangeTToG();
[DllImport("cs2_patch.dll", EntryPoint = "TestA")]
public static extern void TestA();
[DllImport("cs2_patch.dll", EntryPoint = "StartReplace")]
public static extern void StartReplace();
[DllImport("cs2_patch.dll", EntryPoint = "EndReplace")]
public static extern void EndReplace();
[DllImport("Kernel32.dll", EntryPoint = "WaitForSingleObject")]
public extern static int WaitForSingleObject(uint hHandle, uint dwMilliseconds);
[DllImport("cs2_patch.dll", EntryPoint = "InjectSelfTo")]
public static extern uint pStart(string path);
[DllImport("cs2_patch.dll", EntryPoint = "CreateDataExport")]
public static extern void CreateData([MarshalAs(UnmanagedType.LPWStr)] string path);
[DllImport("Kernel32.dll", EntryPoint = "TerminateProcess")]
public static extern bool TerminateProcess(uint hThread, uint dwExitCode);
[DllImport("Kernel32.dll", EntryPoint = "OpenProcess")]
public static extern uint OpenProcess(uint dwDesiredAccess, bool bInheritHandle, uint dwProcessId);
int pSaveProcess = 0;
uint hThread = 0;
int ms_str = 0;
int ptPid = 0;
[DllImport("Kernel32.dll", EntryPoint = "GetCurrentProcess")]
public static extern uint GetCurrentProcess();
public static uint pSaveProcess = 0;
public static uint hThread = 0;
public static uint ms_str = 0;
public static uint ns_str = 0;
public static uint ptPid = 0;
public static uint ppMode;
private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
if(this.Visibility != Visibility.Visible){
@@ -74,7 +86,6 @@ namespace cs2_chs
e.Cancel = false;
unsafe
{
TerminateProcess(OpenProcess(0x0001, false, *(uint*)ptPid), 1);
}
}
@@ -83,29 +94,82 @@ namespace cs2_chs
e.Cancel = true;
}
}
public MainWindow()
{
InitializeComponent();
this.Closing += Window_Closing;
}
private void Grid_Loaded(object sender, RoutedEventArgs e)
{
// char[] a = { '1', '2', '3' };
hThread = pStart("cs2.exe");
// MessageBox.Show("");
TestA();
int hMod = DllTools.GetModuleHandleA("cs2_patch.dll");
if (!initdata.successedLoad)
{
MessageBox.Show("error:failed to load Init.xml!","Error!",MessageBoxButton.OK,MessageBoxImage.Error);
TerminateProcess(GetCurrentProcess(), 1);
return;
}
uint ppAddr = (uint)DllTools.GetProcAddress(hMod, "m_Addr");//m_Addr
MainWindow.ppMode = (uint)DllTools.GetProcAddress(hMod, "VioMode");//m_Addr
unsafe
{
(*(uint*)ppAddr) = initdata.Addr;
(*(int*)ppMode) = initdata.VioMode;
}
AdvanceSetting.StartUpEdit.Text = initdata.StartUp;
AdvanceSetting.StartUpEdit.Foreground = new SolidColorBrush(Colors.Black);
AdvanceSetting.AddressEdit.Text = Convert.ToString(initdata.Addr, 16);
AdvanceSetting.AddressEdit.Foreground = new SolidColorBrush(Colors.Black);
AdvanceSetting.EnvioMode.IsChecked = initdata.Envio;
AdvanceSetting.EnvioMode.Foreground = new SolidColorBrush(Colors.Black);
// MessageBox.Show("");
switch (initdata.VioMode)
{
case 0:
AdvanceSetting.OM_GPY.IsChecked = true;
break;
case 1:
AdvanceSetting.OM_TOT.IsChecked = true;
break;
}
// MessageBox.Show("");
AdvanceSetting.enChanged = false;
// MessageBox.Show(initdata.StartUp);
hThread = pStart(initdata.StartUp);//VioMode
if (initdata.Envio)
{
AdvanceSetting.OM_GPY.IsEnabled = true;
AdvanceSetting.OM_TOT.IsEnabled = true;
AdvanceSetting.OutPutLog.IsEnabled = true;
EndReplace();
}
else
{
AdvanceSetting.OM_GPY.IsEnabled = false;
AdvanceSetting.OM_TOT.IsEnabled = false;
AdvanceSetting.OutPutLog.IsEnabled = false;
StartReplace();
}
if (hMod == 0)
MessageBox.Show("error");
pSaveProcess = DllTools.GetProcAddress(hMod, "saveProcess");
ms_str = DllTools.GetProcAddress(hMod, "ms_str");
ptPid = DllTools.GetProcAddress(hMod, "tPid");
pSaveProcess = (uint)DllTools.GetProcAddress(hMod, "saveProcess");
ms_str = (uint)DllTools.GetProcAddress(hMod, "ms_str");
ns_str = (uint)DllTools.GetProcAddress(hMod, "ns_str");
ptPid = (uint)DllTools.GetProcAddress(hMod, "tPid");
Thread threadExit = new Thread(delegate ()
{
WaitForSingleObject(hThread, 0xFFFFFFFF);
this.Dispatcher.Invoke(DispatcherPriority.Normal, (ThreadStart)delegate ()
{
this.Close();
TerminateProcess(GetCurrentProcess(), 1);
});
});
threadExit.Start();
@@ -115,13 +179,9 @@ namespace cs2_chs
{
// this.Visibility = Visibility.Visible;
}
private void Grid_MouseDown(object sender, MouseButtonEventArgs e)
{
}
private void Button_Click(object sender, RoutedEventArgs e)
{
Thread thread1 = new Thread(delegate ()
@@ -134,7 +194,6 @@ namespace cs2_chs
CreateData(LocalS);
});
thread1.Start();
Thread thread2 = new Thread(delegate ()
{
unsafe
@@ -145,7 +204,6 @@ namespace cs2_chs
apply.IsEnabled = false;
PBS.Visibility = Visibility.Visible;
});
while (*saveProcess != 1)
{
this.Dispatcher.Invoke(DispatcherPriority.Normal, (ThreadStart)delegate ()
@@ -154,7 +212,6 @@ namespace cs2_chs
});
Thread.Sleep(15);
}
this.Dispatcher.Invoke(DispatcherPriority.Normal, (ThreadStart)delegate ()
{
apply.IsEnabled = true;
@@ -165,28 +222,24 @@ namespace cs2_chs
});
thread2.Start();
}
private void Button_Click_1(object sender, RoutedEventArgs e)
{
unsafe
{
char* pms_str = (char*)ms_str;
string MsStr = new string(pms_str);
TEXT_INPUT.Text = MsStr;
}
}
private void CommandBinding_ShowMainWindow_CanExecute(object sender, CanExecuteRoutedEventArgs e)
{
e.CanExecute = false;
// AdvanceSetting.
e.CanExecute = true;
}
private void CommandBinding_ShowMainWindow_Executed(object sender, ExecutedRoutedEventArgs e)
{
//this.Visibility = Visibility.Visible;
AdvanceSetting.Show();
}
private void Grid_Unloaded(object sender, RoutedEventArgs e)
{
// MessageBox.Show("");

View File

@@ -3,7 +3,6 @@ using System.Resources;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Windows;
// 有关程序集的一般信息由以下
// 控制。更改这些特性值可修改
// 与程序集关联的信息。
@@ -15,22 +14,17 @@ using System.Windows;
[assembly: AssemblyCopyright("Copyright © 2020")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 将 ComVisible 设置为 false 会使此程序集中的类型
//对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型
//请将此类型的 ComVisible 特性设置为 true。
[assembly: ComVisible(false)]
//若要开始生成可本地化的应用程序,请设置
//.csproj 文件中的 <UICulture>CultureYouAreCodingWith</UICulture>
//例如,如果您在源文件中使用的是美国英语,
//使用的是美国英语,请将 <UICulture> 设置为 en-US。 然后取消
//对以下 NeutralResourceLanguage 特性的注释。 更新
//以下行中的“en-US”以匹配项目文件中的 UICulture 设置。
//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
[assembly: ThemeInfo(
ResourceDictionaryLocation.None, //主题特定资源词典所处位置
//(未在页面中找到资源时使用,
@@ -39,8 +33,6 @@ using System.Windows;
//(未在页面中找到资源时使用,
//、应用程序或任何主题专用资源字典中找到时使用)
)]
// 程序集的版本信息由下列四个值组成:
//
// 主版本

View File

@@ -7,7 +7,6 @@
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
namespace cs2_chs.Properties {
using System;

View File

@@ -53,7 +53,6 @@
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter

View File

@@ -7,7 +7,6 @@
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
namespace cs2_chs.Properties {

View File

@@ -0,0 +1,398 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>Microsoft.IdentityModel.Logging</name>
</assembly>
<members>
<member name="T:Microsoft.IdentityModel.Logging.IdentityModelEventSource">
<summary>
Event source based logger to log different events.
</summary>
</member>
<member name="P:Microsoft.IdentityModel.Logging.IdentityModelEventSource.Logger">
<summary>
Static logger that is exposed externally. An external application or framework can hook up a listener to this event source to log data in a custom way.
</summary>
</member>
<member name="P:Microsoft.IdentityModel.Logging.IdentityModelEventSource.ShowPII">
<summary>
Flag which indicates whether or not PII is shown in logs. False by default.
</summary>
</member>
<member name="P:Microsoft.IdentityModel.Logging.IdentityModelEventSource.HiddenPIIString">
<summary>
String that is used in place of any arguments to log messages if the 'ShowPII' flag is set to false.
</summary>
</member>
<member name="P:Microsoft.IdentityModel.Logging.IdentityModelEventSource.HeaderWritten">
<summary>
Indicates whether or the log message header (contains library version, date/time, and PII debugging information) has been written.
</summary>
</member>
<member name="F:Microsoft.IdentityModel.Logging.IdentityModelEventSource._versionLogMessage">
<summary>
The log message that indicates the current library version.
</summary>
</member>
<member name="F:Microsoft.IdentityModel.Logging.IdentityModelEventSource._dateLogMessage">
<summary>
The log message that indicates the date.
</summary>
</member>
<member name="F:Microsoft.IdentityModel.Logging.IdentityModelEventSource._piiOffLogMessage">
<summary>
The log message that is shown when PII is off.
</summary>
</member>
<member name="F:Microsoft.IdentityModel.Logging.IdentityModelEventSource._piiOnLogMessage">
<summary>
The log message that is shown when PII is off.
</summary>
</member>
<member name="M:Microsoft.IdentityModel.Logging.IdentityModelEventSource.WriteAlways(System.String)">
<summary>
Writes an event log by using the provided string argument and current UTC time.
No level filtering is done on the event.
</summary>
<param name="message">The log message.</param>
<remarks>No level filtering.</remarks>
</member>
<member name="M:Microsoft.IdentityModel.Logging.IdentityModelEventSource.WriteAlways(System.String,System.Object[])">
<summary>
Writes an event log by using the provided string argument, current UTC time and the provided arguments list.
</summary>
<param name="message">The log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.IdentityModelEventSource.WriteVerbose(System.String)">
<summary>
Writes a verbose event log by using the provided string argument and current UTC time.
</summary>
<param name="message">The log message.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.IdentityModelEventSource.WriteVerbose(System.String,System.Object[])">
<summary>
Writes a verbose event log by using the provided string argument, current UTC time and the provided arguments list.
</summary>
<param name="message">The log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.IdentityModelEventSource.WriteInformation(System.String)">
<summary>
Writes an information event log by using the provided string argument and current UTC time.
</summary>
<param name="message">The log message.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.IdentityModelEventSource.WriteInformation(System.String,System.Object[])">
<summary>
Writes an information event log by using the provided string argument, current UTC time and the provided arguments list.
</summary>
<param name="message">The log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.IdentityModelEventSource.WriteWarning(System.String)">
<summary>
Writes a warning event log by using the provided string argument and current UTC time.
</summary>
<param name="message">The log message.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.IdentityModelEventSource.WriteWarning(System.String,System.Object[])">
<summary>
Writes a warning event log by using the provided string argument, current UTC time and the provided arguments list.
</summary>
<param name="message">The log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.IdentityModelEventSource.WriteError(System.String)">
<summary>
Writes an error event log by using the provided string argument and current UTC time.
</summary>
<param name="message">The log message.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.IdentityModelEventSource.WriteError(System.String,System.Object[])">
<summary>
Writes an error event log by using the provided string argument, current UTC time and the provided arguments list.
</summary>
<param name="message">The log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.IdentityModelEventSource.WriteCritical(System.String)">
<summary>
Writes a critical event log by using the provided string argument and current UTC time.
</summary>
<param name="message">The log message.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.IdentityModelEventSource.WriteCritical(System.String,System.Object[])">
<summary>
Writes a critical event log by using the provided string argument, current UTC time and the provided arguments list.
</summary>
<param name="message">The log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.IdentityModelEventSource.Write(System.Diagnostics.Tracing.EventLevel,System.Exception,System.String)">
<summary>
Writes an exception log by using the provided event identifer, exception argument, string argument and current UTC time.
</summary>
<param name="level"><see cref="T:System.Diagnostics.Tracing.EventLevel"/></param>
<param name="innerException"><see cref="T:System.Exception"/></param>
<param name="message">The log message.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.IdentityModelEventSource.Write(System.Diagnostics.Tracing.EventLevel,System.Exception,System.String,System.Object[])">
<summary>
Writes an exception log by using the provided event identifer, exception argument, string argument, arguments list and current UTC time.
</summary>
<param name="level"><see cref="T:System.Diagnostics.Tracing.EventLevel"/></param>
<param name="innerException"><see cref="T:System.Exception"/></param>
<param name="message">The log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
</member>
<member name="P:Microsoft.IdentityModel.Logging.IdentityModelEventSource.LogLevel">
<summary>
Minimum log level to log events. Default is Warning.
</summary>
</member>
<member name="T:Microsoft.IdentityModel.Logging.LogHelper">
<summary>
Helper class for logging.
</summary>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogArgumentNullException(System.String)">
<summary>
Logs an exception using the event source logger and returns new <see cref="T:System.ArgumentNullException"/> exception.
</summary>
<param name="argument">argument that is null or empty.</param>
<remarks>EventLevel is set to Error.</remarks>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogException``1(System.String)">
<summary>
Logs an exception using the event source logger and returns new typed exception.
</summary>
<param name="message">message to log.</param>
<remarks>EventLevel is set to Error.</remarks>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogArgumentException``1(System.String,System.String)">
<summary>
Logs an argument exception using the event source logger and returns new typed exception.
</summary>
<param name="argumentName">Identifies the argument whose value generated the ArgumentException.</param>
<param name="message">message to log.</param>
<remarks>EventLevel is set to Error.</remarks>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogException``1(System.String,System.Object[])">
<summary>
Logs an exception using the event source logger and returns new typed exception.
</summary>
<param name="format">Format string of the log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
<remarks>EventLevel is set to Error.</remarks>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogArgumentException``1(System.String,System.String,System.Object[])">
<summary>
Logs an argument exception using the event source logger and returns new typed exception.
</summary>
<param name="argumentName">Identifies the argument whose value generated the ArgumentException.</param>
<param name="format">Format string of the log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
<remarks>EventLevel is set to Error.</remarks>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogException``1(System.Exception,System.String)">
<summary>
Logs an exception using the event source logger and returns new typed exception.
</summary>
<param name="innerException">the inner <see cref="T:System.Exception"/> to be added to the outer exception.</param>
<param name="message">message to log.</param>
<remarks>EventLevel is set to Error.</remarks>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogArgumentException``1(System.String,System.Exception,System.String)">
<summary>
Logs an argument exception using the event source logger and returns new typed exception.
</summary>
<param name="argumentName">Identifies the argument whose value generated the ArgumentException.</param>
<param name="innerException">the inner <see cref="T:System.Exception"/> to be added to the outer exception.</param>
<param name="message">message to log.</param>
<remarks>EventLevel is set to Error.</remarks>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogException``1(System.Exception,System.String,System.Object[])">
<summary>
Logs an exception using the event source logger and returns new typed exception.
</summary>
<param name="innerException">the inner <see cref="T:System.Exception"/> to be added to the outer exception.</param>
<param name="format">Format string of the log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
<remarks>EventLevel is set to Error.</remarks>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogArgumentException``1(System.String,System.Exception,System.String,System.Object[])">
<summary>
Logs an argument exception using the event source logger and returns new typed exception.
</summary>
<param name="argumentName">Identifies the argument whose value generated the ArgumentException.</param>
<param name="innerException">the inner <see cref="T:System.Exception"/> to be added to the outer exception.</param>
<param name="format">Format string of the log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
<remarks>EventLevel is set to Error.</remarks>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogException``1(System.Diagnostics.Tracing.EventLevel,System.String)">
<summary>
Logs an exception using the event source logger and returns new typed exception.
</summary>
<param name="eventLevel">Identifies the level of an event to be logged.</param>
<param name="message">message to log.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogArgumentException``1(System.Diagnostics.Tracing.EventLevel,System.String,System.String)">
<summary>
Logs an argument exception using the event source logger and returns new typed exception.
</summary>
<param name="eventLevel">Identifies the level of an event to be logged.</param>
<param name="argumentName">Identifies the argument whose value generated the ArgumentException.</param>
<param name="message">message to log.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogException``1(System.Diagnostics.Tracing.EventLevel,System.String,System.Object[])">
<summary>
Logs an exception using the event source logger and returns new typed exception.
</summary>
<param name="eventLevel">Identifies the level of an event to be logged.</param>
<param name="format">Format string of the log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogArgumentException``1(System.Diagnostics.Tracing.EventLevel,System.String,System.String,System.Object[])">
<summary>
Logs an argument exception using the event source logger and returns new typed exception.
</summary>
<param name="eventLevel">Identifies the level of an event to be logged.</param>
<param name="argumentName">Identifies the argument whose value generated the ArgumentException.</param>
<param name="format">Format string of the log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogException``1(System.Diagnostics.Tracing.EventLevel,System.Exception,System.String)">
<summary>
Logs an exception using the event source logger and returns new typed exception.
</summary>
<param name="eventLevel">Identifies the level of an event to be logged.</param>
<param name="innerException">the inner <see cref="T:System.Exception"/> to be added to the outer exception.</param>
<param name="message">message to log.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogArgumentException``1(System.Diagnostics.Tracing.EventLevel,System.String,System.Exception,System.String)">
<summary>
Logs an argument exception using the event source logger and returns new typed exception.
</summary>
<param name="eventLevel">Identifies the level of an event to be logged.</param>
<param name="argumentName">Identifies the argument whose value generated the ArgumentException.</param>
<param name="innerException">the inner <see cref="T:System.Exception"/> to be added to the outer exception.</param>
<param name="message">message to log.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogException``1(System.Diagnostics.Tracing.EventLevel,System.Exception,System.String,System.Object[])">
<summary>
Logs an exception using the event source logger and returns new typed exception.
</summary>
<param name="eventLevel">Identifies the level of an event to be logged.</param>
<param name="innerException">the inner <see cref="T:System.Exception"/> to be added to the outer exception.</param>
<param name="format">Format string of the log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogArgumentException``1(System.Diagnostics.Tracing.EventLevel,System.String,System.Exception,System.String,System.Object[])">
<summary>
Logs an argument exception using the event source logger and returns new typed exception.
</summary>
<param name="eventLevel">Identifies the level of an event to be logged.</param>
<param name="argumentName">Identifies the argument whose value generated the ArgumentException.</param>
<param name="innerException">the inner <see cref="T:System.Exception"/> to be added to the outer exception.</param>
<param name="format">Format string of the log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogExceptionMessage(System.Exception)">
<summary>
Logs an exception using the event source logger.
</summary>
<param name="exception">The exception to log.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogExceptionMessage(System.Diagnostics.Tracing.EventLevel,System.Exception)">
<summary>
Logs an exception using the event source logger.
</summary>
<param name="eventLevel">Identifies the level of an event to be logged.</param>
<param name="exception">The exception to log.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogInformation(System.String,System.Object[])">
<summary>
Logs an information event.
</summary>
<param name="message">The log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogVerbose(System.String,System.Object[])">
<summary>
Logs a verbose event.
</summary>
<param name="message">The log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogWarning(System.String,System.Object[])">
<summary>
Logs a warning event.
</summary>
<param name="message">The log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.LogExceptionImpl``1(System.Diagnostics.Tracing.EventLevel,System.String,System.Exception,System.String,System.Object[])">
<summary>
Logs an exception using the event source logger and returns new typed exception.
</summary>
<param name="eventLevel">Identifies the level of an event to be logged.</param>
<param name="argumentName">Identifies the argument whose value generated the ArgumentException.</param>
<param name="innerException">the inner <see cref="T:System.Exception"/> to be added to the outer exception.</param>
<param name="format">Format string of the log message.</param>
<param name="args">An object array that contains zero or more objects to format.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.LogHelper.FormatInvariant(System.String,System.Object[])">
<summary>
Formats the string using InvariantCulture
</summary>
<param name="format">Format string.</param>
<param name="args">Format arguments.</param>
<returns>Formatted string.</returns>
</member>
<member name="T:Microsoft.IdentityModel.Logging.LogMessages">
<summary>
Log messages and codes for Microsoft.IdentityModel.Logging
</summary>
</member>
<member name="T:Microsoft.IdentityModel.Logging.TextWriterEventListener">
<summary>
Event listener that writes logs to a file or a fileStream provided by user.
</summary>
</member>
<member name="F:Microsoft.IdentityModel.Logging.TextWriterEventListener.DefaultLogFileName">
<summary>
Name of the default log file, excluding its path.
</summary>
</member>
<member name="M:Microsoft.IdentityModel.Logging.TextWriterEventListener.#ctor">
<summary>
Initializes a new instance of <see cref="T:Microsoft.IdentityModel.Logging.TextWriterEventListener"/> that writes logs to text file.
</summary>
</member>
<member name="M:Microsoft.IdentityModel.Logging.TextWriterEventListener.#ctor(System.String)">
<summary>
Initializes a new instance of <see cref="T:Microsoft.IdentityModel.Logging.TextWriterEventListener"/> that writes logs to text file.
</summary>
<param name="filePath">location of the file where log messages will be written.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.TextWriterEventListener.#ctor(System.IO.StreamWriter)">
<summary>
Initializes a new instance of <see cref="T:Microsoft.IdentityModel.Logging.TextWriterEventListener"/> that writes logs to text file.
</summary>
<param name="streamWriter">StreamWriter where logs will be written.</param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.TextWriterEventListener.OnEventWritten(System.Diagnostics.Tracing.EventWrittenEventArgs)">
<summary>
Called whenever an event has been written by an event source for which the event listener has enabled events.
</summary>
<param name="eventData"><see cref="T:System.Diagnostics.Tracing.EventWrittenEventArgs"/></param>
</member>
<member name="M:Microsoft.IdentityModel.Logging.TextWriterEventListener.Dispose">
<summary>
Releases all resources used by the current instance of the <see cref="T:Microsoft.IdentityModel.Logging.TextWriterEventListener"/> class.
</summary>
</member>
</members>
</doc>

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2"/>
</startup>
</configuration>

Binary file not shown.

View File

@@ -61,6 +61,9 @@
<Prefer32Bit>true</Prefer32Bit>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
</PropertyGroup>
<PropertyGroup>
<ApplicationIcon>Logo.ico</ApplicationIcon>
</PropertyGroup>
<ItemGroup>
<Reference Include="Microsoft.IdentityModel.Logging, Version=5.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.IdentityModel.Logging.5.6.0\lib\net461\Microsoft.IdentityModel.Logging.dll</HintPath>
@@ -90,16 +93,24 @@
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</ApplicationDefinition>
<Page Include="Advance.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="MainWindow.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Compile Include="Advance.xaml.cs">
<DependentUpon>Advance.xaml</DependentUpon>
</Compile>
<Compile Include="App.xaml.cs">
<DependentUpon>App.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
<Compile Include="DllTools.cs" />
<Compile Include="HotKeyWinApi.cs" />
<Compile Include="InitData.cs" />
<Compile Include="MainWindow.xaml.cs">
<DependentUpon>MainWindow.xaml</DependentUpon>
<SubType>Code</SubType>
@@ -138,5 +149,16 @@
<ItemGroup>
<Resource Include="02.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Logo.ico" />
</ItemGroup>
<ItemGroup>
<Resource Include="Init.xml">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Resource>
</ItemGroup>
<ItemGroup>
<Resource Include="03.png" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

Binary file not shown.

View File

@@ -0,0 +1,182 @@
#pragma checksum "..\..\..\Advance.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "27958547282BFED18838A7B0DB22FB28577463A01440ACA04CA1E2B3E8C9409E"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
using cs2_chs;
namespace cs2_chs {
/// <summary>
/// Advance
/// </summary>
public partial class Advance : System.Windows.Window, System.Windows.Markup.IComponentConnector {
#line 14 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox StartUpEdit;
#line default
#line hidden
#line 22 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox AddressEdit;
#line default
#line hidden
#line 23 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.CheckBox EnvioMode;
#line default
#line hidden
#line 24 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.RadioButton OM_GPY;
#line default
#line hidden
#line 25 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.RadioButton OM_TOT;
#line default
#line hidden
#line 26 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox OutPutLog;
#line default
#line hidden
private bool _contentLoaded;
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
public void InitializeComponent() {
if (_contentLoaded) {
return;
}
_contentLoaded = true;
System.Uri resourceLocater = new System.Uri("/cs2_chs;component/advance.xaml", System.UriKind.Relative);
#line 1 "..\..\..\Advance.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
switch (connectionId)
{
case 1:
this.StartUpEdit = ((System.Windows.Controls.TextBox)(target));
#line 14 "..\..\..\Advance.xaml"
this.StartUpEdit.TextChanged += new System.Windows.Controls.TextChangedEventHandler(this.StartUpEdit_TextChanged);
#line default
#line hidden
return;
case 2:
#line 16 "..\..\..\Advance.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Button_Click);
#line default
#line hidden
return;
case 3:
this.AddressEdit = ((System.Windows.Controls.TextBox)(target));
#line 22 "..\..\..\Advance.xaml"
this.AddressEdit.TextChanged += new System.Windows.Controls.TextChangedEventHandler(this.AddressEdit_TextChanged);
#line default
#line hidden
return;
case 4:
this.EnvioMode = ((System.Windows.Controls.CheckBox)(target));
#line 23 "..\..\..\Advance.xaml"
this.EnvioMode.Click += new System.Windows.RoutedEventHandler(this.EnvioMode_Click);
#line default
#line hidden
return;
case 5:
this.OM_GPY = ((System.Windows.Controls.RadioButton)(target));
#line 24 "..\..\..\Advance.xaml"
this.OM_GPY.Checked += new System.Windows.RoutedEventHandler(this.OM_GPY_Checked);
#line default
#line hidden
return;
case 6:
this.OM_TOT = ((System.Windows.Controls.RadioButton)(target));
#line 25 "..\..\..\Advance.xaml"
this.OM_TOT.Checked += new System.Windows.RoutedEventHandler(this.OM_TOT_Checked);
#line default
#line hidden
return;
case 7:
this.OutPutLog = ((System.Windows.Controls.TextBox)(target));
return;
}
this._contentLoaded = true;
}
}
}

View File

@@ -0,0 +1,182 @@
#pragma checksum "..\..\..\Advance.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "27958547282BFED18838A7B0DB22FB28577463A01440ACA04CA1E2B3E8C9409E"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
using cs2_chs;
namespace cs2_chs {
/// <summary>
/// Advance
/// </summary>
public partial class Advance : System.Windows.Window, System.Windows.Markup.IComponentConnector {
#line 14 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox StartUpEdit;
#line default
#line hidden
#line 22 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox AddressEdit;
#line default
#line hidden
#line 23 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.CheckBox EnvioMode;
#line default
#line hidden
#line 24 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.RadioButton OM_GPY;
#line default
#line hidden
#line 25 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.RadioButton OM_TOT;
#line default
#line hidden
#line 26 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox OutPutLog;
#line default
#line hidden
private bool _contentLoaded;
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
public void InitializeComponent() {
if (_contentLoaded) {
return;
}
_contentLoaded = true;
System.Uri resourceLocater = new System.Uri("/cs2_chs;component/advance.xaml", System.UriKind.Relative);
#line 1 "..\..\..\Advance.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
switch (connectionId)
{
case 1:
this.StartUpEdit = ((System.Windows.Controls.TextBox)(target));
#line 14 "..\..\..\Advance.xaml"
this.StartUpEdit.TextChanged += new System.Windows.Controls.TextChangedEventHandler(this.StartUpEdit_TextChanged);
#line default
#line hidden
return;
case 2:
#line 16 "..\..\..\Advance.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Button_Click);
#line default
#line hidden
return;
case 3:
this.AddressEdit = ((System.Windows.Controls.TextBox)(target));
#line 22 "..\..\..\Advance.xaml"
this.AddressEdit.TextChanged += new System.Windows.Controls.TextChangedEventHandler(this.AddressEdit_TextChanged);
#line default
#line hidden
return;
case 4:
this.EnvioMode = ((System.Windows.Controls.CheckBox)(target));
#line 23 "..\..\..\Advance.xaml"
this.EnvioMode.Click += new System.Windows.RoutedEventHandler(this.EnvioMode_Click);
#line default
#line hidden
return;
case 5:
this.OM_GPY = ((System.Windows.Controls.RadioButton)(target));
#line 24 "..\..\..\Advance.xaml"
this.OM_GPY.Checked += new System.Windows.RoutedEventHandler(this.OM_GPY_Checked);
#line default
#line hidden
return;
case 6:
this.OM_TOT = ((System.Windows.Controls.RadioButton)(target));
#line 25 "..\..\..\Advance.xaml"
this.OM_TOT.Checked += new System.Windows.RoutedEventHandler(this.OM_TOT_Checked);
#line default
#line hidden
return;
case 7:
this.OutPutLog = ((System.Windows.Controls.TextBox)(target));
return;
}
this._contentLoaded = true;
}
}
}

Binary file not shown.

View File

@@ -0,0 +1,83 @@
#pragma checksum "..\..\..\App.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "5EE4FB2D2750083127A6673A009D2DA762ABE28530F3E6BD3C3684F089511E6B"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
using cs2_chs;
namespace cs2_chs {
/// <summary>
/// App
/// </summary>
public partial class App : System.Windows.Application {
private bool _contentLoaded;
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
public void InitializeComponent() {
if (_contentLoaded) {
return;
}
_contentLoaded = true;
#line 5 "..\..\..\App.xaml"
this.StartupUri = new System.Uri("MainWindow.xaml", System.UriKind.Relative);
#line default
#line hidden
System.Uri resourceLocater = new System.Uri("/cs2_chs;component/app.xaml", System.UriKind.Relative);
#line 1 "..\..\..\App.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}
/// <summary>
/// Application Entry Point.
/// </summary>
[System.STAThreadAttribute()]
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
public static void Main() {
cs2_chs.App app = new cs2_chs.App();
app.InitializeComponent();
app.Run();
}
}
}

View File

@@ -1,4 +1,4 @@
#pragma checksum "..\..\..\App.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "47A6ABC1F984D2628127870792B9669A74CD780D5065D75E37A3BA999C302E28"
#pragma checksum "..\..\..\App.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "5EE4FB2D2750083127A6673A009D2DA762ABE28530F3E6BD3C3684F089511E6B"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
@@ -40,16 +40,29 @@ namespace cs2_chs {
/// </summary>
public partial class App : System.Windows.Application {
private bool _contentLoaded;
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
public void InitializeComponent() {
if (_contentLoaded) {
return;
}
_contentLoaded = true;
#line 5 "..\..\..\App.xaml"
this.StartupUri = new System.Uri("MainWindow.xaml", System.UriKind.Relative);
#line default
#line hidden
System.Uri resourceLocater = new System.Uri("/cs2_chs;component/app.xaml", System.UriKind.Relative);
#line 1 "..\..\..\App.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}

Binary file not shown.

View File

@@ -0,0 +1,165 @@
#pragma checksum "..\..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "F004E4358EBAA317663957C95CDCBDC56C5FFAC230C7FE76F16BF31B44EE5CE4"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
using cs2_chs;
namespace cs2_chs {
/// <summary>
/// MainWindow
/// </summary>
public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
#line 17 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox TEXT_INPUT;
#line default
#line hidden
#line 32 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Button apply;
#line default
#line hidden
#line 40 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.ProgressBar PBS;
#line default
#line hidden
private bool _contentLoaded;
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
public void InitializeComponent() {
if (_contentLoaded) {
return;
}
_contentLoaded = true;
System.Uri resourceLocater = new System.Uri("/cs2_chs;component/mainwindow.xaml", System.UriKind.Relative);
#line 1 "..\..\..\MainWindow.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
switch (connectionId)
{
case 1:
#line 9 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Grid)(target)).Loaded += new System.Windows.RoutedEventHandler(this.Grid_Loaded);
#line default
#line hidden
#line 9 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Grid)(target)).MouseUp += new System.Windows.Input.MouseButtonEventHandler(this.Grid_MouseUp);
#line default
#line hidden
#line 9 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Grid)(target)).MouseDown += new System.Windows.Input.MouseButtonEventHandler(this.Grid_MouseDown);
#line default
#line hidden
#line 9 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Grid)(target)).Unloaded += new System.Windows.RoutedEventHandler(this.Grid_Unloaded);
#line default
#line hidden
return;
case 2:
this.TEXT_INPUT = ((System.Windows.Controls.TextBox)(target));
return;
case 3:
this.apply = ((System.Windows.Controls.Button)(target));
#line 32 "..\..\..\MainWindow.xaml"
this.apply.Click += new System.Windows.RoutedEventHandler(this.Button_Click);
#line default
#line hidden
return;
case 4:
this.PBS = ((System.Windows.Controls.ProgressBar)(target));
return;
case 5:
#line 41 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Button_Click_1);
#line default
#line hidden
return;
case 6:
#line 58 "..\..\..\MainWindow.xaml"
((System.Windows.Input.CommandBinding)(target)).CanExecute += new System.Windows.Input.CanExecuteRoutedEventHandler(this.CommandBinding_ShowMainWindow_CanExecute);
#line default
#line hidden
#line 59 "..\..\..\MainWindow.xaml"
((System.Windows.Input.CommandBinding)(target)).Executed += new System.Windows.Input.ExecutedRoutedEventHandler(this.CommandBinding_ShowMainWindow_Executed);
#line default
#line hidden
return;
}
this._contentLoaded = true;
}
}
}

View File

@@ -1,4 +1,4 @@
#pragma checksum "..\..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "F057702BFD72AA7AA90C434C7677C42026F3D87C5998DD20BC1D7D0294BF503E"
#pragma checksum "..\..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "F004E4358EBAA317663957C95CDCBDC56C5FFAC230C7FE76F16BF31B44EE5CE4"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
@@ -40,6 +40,30 @@ namespace cs2_chs {
/// </summary>
public partial class MainWindow : System.Windows.Window, System.Windows.Markup.IComponentConnector {
#line 17 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox TEXT_INPUT;
#line default
#line hidden
#line 32 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.Button apply;
#line default
#line hidden
#line 40 "..\..\..\MainWindow.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.ProgressBar PBS;
#line default
#line hidden
private bool _contentLoaded;
/// <summary>
@@ -75,6 +99,61 @@ namespace cs2_chs {
#line 9 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Grid)(target)).Loaded += new System.Windows.RoutedEventHandler(this.Grid_Loaded);
#line default
#line hidden
#line 9 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Grid)(target)).MouseUp += new System.Windows.Input.MouseButtonEventHandler(this.Grid_MouseUp);
#line default
#line hidden
#line 9 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Grid)(target)).MouseDown += new System.Windows.Input.MouseButtonEventHandler(this.Grid_MouseDown);
#line default
#line hidden
#line 9 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Grid)(target)).Unloaded += new System.Windows.RoutedEventHandler(this.Grid_Unloaded);
#line default
#line hidden
return;
case 2:
this.TEXT_INPUT = ((System.Windows.Controls.TextBox)(target));
return;
case 3:
this.apply = ((System.Windows.Controls.Button)(target));
#line 32 "..\..\..\MainWindow.xaml"
this.apply.Click += new System.Windows.RoutedEventHandler(this.Button_Click);
#line default
#line hidden
return;
case 4:
this.PBS = ((System.Windows.Controls.ProgressBar)(target));
return;
case 5:
#line 41 "..\..\..\MainWindow.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Button_Click_1);
#line default
#line hidden
return;
case 6:
#line 58 "..\..\..\MainWindow.xaml"
((System.Windows.Input.CommandBinding)(target)).CanExecute += new System.Windows.Input.CanExecuteRoutedEventHandler(this.CommandBinding_ShowMainWindow_CanExecute);
#line default
#line hidden
#line 59 "..\..\..\MainWindow.xaml"
((System.Windows.Input.CommandBinding)(target)).Executed += new System.Windows.Input.ExecutedRoutedEventHandler(this.CommandBinding_ShowMainWindow_Executed);
#line default
#line hidden
return;

View File

@@ -0,0 +1,22 @@
D:\VSProject\cs2\cs2_united\cs2_chs\bin\x86\Debug\cs2_chs.exe.config
D:\VSProject\cs2\cs2_united\cs2_chs\bin\x86\Debug\cs2_chs.exe
D:\VSProject\cs2\cs2_united\cs2_chs\bin\x86\Debug\cs2_chs.pdb
D:\VSProject\cs2\cs2_united\cs2_chs\bin\x86\Debug\Microsoft.IdentityModel.Logging.dll
D:\VSProject\cs2\cs2_united\cs2_chs\bin\x86\Debug\WebDriver.dll
D:\VSProject\cs2\cs2_united\cs2_chs\bin\x86\Debug\Microsoft.IdentityModel.Logging.xml
D:\VSProject\cs2\cs2_united\cs2_chs\bin\x86\Debug\WebDriver.xml
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Debug\Advance.g.cs
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Debug\MainWindow.g.cs
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Debug\App.g.cs
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Debug\cs2_chs_MarkupCompile.cache
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Debug\cs2_chs_MarkupCompile.lref
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Debug\App.baml
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Debug\Advance.baml
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Debug\MainWindow.baml
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Debug\cs2_chs.g.resources
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Debug\cs2_chs.Properties.Resources.resources
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Debug\cs2_chs.csproj.GenerateResource.cache
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Debug\cs2_chs.csproj.CopyComplete
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Debug\cs2_chs.exe
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Debug\cs2_chs.pdb
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Debug\cs2_chs.csprojAssemblyReference.cache

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,20 @@
cs2_chs
winexe
C#
.cs
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Debug\
cs2_chs
none
false
DEBUG;TRACE
D:\VSProject\cs2\cs2_united\cs2_chs\App.xaml
2-1834107634
9-330204798
171117567902
Advance.xaml;MainWindow.xaml;
False

View File

@@ -10,11 +10,11 @@ none
false
DEBUG;TRACE
D:\VSProject\cs2\cs2_united\cs2_chs\App.xaml
11151548125
2-1834107634
6-1262306213
13152784993
MainWindow.xaml;
10-1440126486
171117567902
Advance.xaml;MainWindow.xaml;
True

View File

@@ -1,4 +1,4 @@

FD:\VSProject\cs2\cs2_united\cs2_chs\MainWindow.xaml;;
FD:\VSProject\cs2\cs2_united\cs2_chs\Advance.xaml;;

View File

@@ -1,4 +1,5 @@

FD:\VSProject\cs2\cs2_united\cs2_chs\App.xaml;;
FD:\VSProject\cs2\cs2_united\cs2_chs\Advance.xaml;;
FD:\VSProject\cs2\cs2_united\cs2_chs\MainWindow.xaml;;

Binary file not shown.

View File

@@ -0,0 +1,190 @@
#pragma checksum "..\..\..\Advance.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "7023714179C69488DCE97B057C3E8A24BD5443F9A245B9FFE55E6AE4581D23C4"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
using cs2_chs;
namespace cs2_chs {
/// <summary>
/// Advance
/// </summary>
public partial class Advance : System.Windows.Window, System.Windows.Markup.IComponentConnector {
#line 14 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox StartUpEdit;
#line default
#line hidden
#line 22 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox AddressEdit;
#line default
#line hidden
#line 23 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.CheckBox EnvioMode;
#line default
#line hidden
#line 24 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.RadioButton OM_GPY;
#line default
#line hidden
#line 25 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.RadioButton OM_TOT;
#line default
#line hidden
#line 26 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox OutPutLog;
#line default
#line hidden
private bool _contentLoaded;
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
public void InitializeComponent() {
if (_contentLoaded) {
return;
}
_contentLoaded = true;
System.Uri resourceLocater = new System.Uri("/cs2_chs;component/advance.xaml", System.UriKind.Relative);
#line 1 "..\..\..\Advance.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
switch (connectionId)
{
case 1:
#line 8 "..\..\..\Advance.xaml"
((cs2_chs.Advance)(target)).MouseMove += new System.Windows.Input.MouseEventHandler(this.Window_MouseMove);
#line default
#line hidden
return;
case 2:
this.StartUpEdit = ((System.Windows.Controls.TextBox)(target));
#line 14 "..\..\..\Advance.xaml"
this.StartUpEdit.TextChanged += new System.Windows.Controls.TextChangedEventHandler(this.StartUpEdit_TextChanged);
#line default
#line hidden
return;
case 3:
#line 16 "..\..\..\Advance.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Button_Click);
#line default
#line hidden
return;
case 4:
this.AddressEdit = ((System.Windows.Controls.TextBox)(target));
#line 22 "..\..\..\Advance.xaml"
this.AddressEdit.TextChanged += new System.Windows.Controls.TextChangedEventHandler(this.AddressEdit_TextChanged);
#line default
#line hidden
return;
case 5:
this.EnvioMode = ((System.Windows.Controls.CheckBox)(target));
#line 23 "..\..\..\Advance.xaml"
this.EnvioMode.Click += new System.Windows.RoutedEventHandler(this.EnvioMode_Click);
#line default
#line hidden
return;
case 6:
this.OM_GPY = ((System.Windows.Controls.RadioButton)(target));
#line 24 "..\..\..\Advance.xaml"
this.OM_GPY.Checked += new System.Windows.RoutedEventHandler(this.OM_GPY_Checked);
#line default
#line hidden
return;
case 7:
this.OM_TOT = ((System.Windows.Controls.RadioButton)(target));
#line 25 "..\..\..\Advance.xaml"
this.OM_TOT.Checked += new System.Windows.RoutedEventHandler(this.OM_TOT_Checked);
#line default
#line hidden
return;
case 8:
this.OutPutLog = ((System.Windows.Controls.TextBox)(target));
return;
}
this._contentLoaded = true;
}
}
}

View File

@@ -0,0 +1,190 @@
#pragma checksum "..\..\..\Advance.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "7023714179C69488DCE97B057C3E8A24BD5443F9A245B9FFE55E6AE4581D23C4"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Diagnostics;
using System.Windows;
using System.Windows.Automation;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Markup;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Media.Effects;
using System.Windows.Media.Imaging;
using System.Windows.Media.Media3D;
using System.Windows.Media.TextFormatting;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Shell;
using cs2_chs;
namespace cs2_chs {
/// <summary>
/// Advance
/// </summary>
public partial class Advance : System.Windows.Window, System.Windows.Markup.IComponentConnector {
#line 14 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox StartUpEdit;
#line default
#line hidden
#line 22 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox AddressEdit;
#line default
#line hidden
#line 23 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.CheckBox EnvioMode;
#line default
#line hidden
#line 24 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.RadioButton OM_GPY;
#line default
#line hidden
#line 25 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.RadioButton OM_TOT;
#line default
#line hidden
#line 26 "..\..\..\Advance.xaml"
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1823:AvoidUnusedPrivateFields")]
internal System.Windows.Controls.TextBox OutPutLog;
#line default
#line hidden
private bool _contentLoaded;
/// <summary>
/// InitializeComponent
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
public void InitializeComponent() {
if (_contentLoaded) {
return;
}
_contentLoaded = true;
System.Uri resourceLocater = new System.Uri("/cs2_chs;component/advance.xaml", System.UriKind.Relative);
#line 1 "..\..\..\Advance.xaml"
System.Windows.Application.LoadComponent(this, resourceLocater);
#line default
#line hidden
}
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1033:InterfaceMethodsShouldBeCallableByChildTypes")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Maintainability", "CA1502:AvoidExcessiveComplexity")]
[System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1800:DoNotCastUnnecessarily")]
void System.Windows.Markup.IComponentConnector.Connect(int connectionId, object target) {
switch (connectionId)
{
case 1:
#line 8 "..\..\..\Advance.xaml"
((cs2_chs.Advance)(target)).MouseMove += new System.Windows.Input.MouseEventHandler(this.Window_MouseMove);
#line default
#line hidden
return;
case 2:
this.StartUpEdit = ((System.Windows.Controls.TextBox)(target));
#line 14 "..\..\..\Advance.xaml"
this.StartUpEdit.TextChanged += new System.Windows.Controls.TextChangedEventHandler(this.StartUpEdit_TextChanged);
#line default
#line hidden
return;
case 3:
#line 16 "..\..\..\Advance.xaml"
((System.Windows.Controls.Button)(target)).Click += new System.Windows.RoutedEventHandler(this.Button_Click);
#line default
#line hidden
return;
case 4:
this.AddressEdit = ((System.Windows.Controls.TextBox)(target));
#line 22 "..\..\..\Advance.xaml"
this.AddressEdit.TextChanged += new System.Windows.Controls.TextChangedEventHandler(this.AddressEdit_TextChanged);
#line default
#line hidden
return;
case 5:
this.EnvioMode = ((System.Windows.Controls.CheckBox)(target));
#line 23 "..\..\..\Advance.xaml"
this.EnvioMode.Click += new System.Windows.RoutedEventHandler(this.EnvioMode_Click);
#line default
#line hidden
return;
case 6:
this.OM_GPY = ((System.Windows.Controls.RadioButton)(target));
#line 24 "..\..\..\Advance.xaml"
this.OM_GPY.Checked += new System.Windows.RoutedEventHandler(this.OM_GPY_Checked);
#line default
#line hidden
return;
case 7:
this.OM_TOT = ((System.Windows.Controls.RadioButton)(target));
#line 25 "..\..\..\Advance.xaml"
this.OM_TOT.Checked += new System.Windows.RoutedEventHandler(this.OM_TOT_Checked);
#line default
#line hidden
return;
case 8:
this.OutPutLog = ((System.Windows.Controls.TextBox)(target));
return;
}
this._contentLoaded = true;
}
}
}

View File

@@ -1,4 +1,4 @@
#pragma checksum "..\..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "E3D04CBB8BE3DB8E4A418B3C7A26D391DBAAA15D174ECA9E0843C2E91A401268"
#pragma checksum "..\..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "F004E4358EBAA317663957C95CDCBDC56C5FFAC230C7FE76F16BF31B44EE5CE4"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。

View File

@@ -1,4 +1,4 @@
#pragma checksum "..\..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "E3D04CBB8BE3DB8E4A418B3C7A26D391DBAAA15D174ECA9E0843C2E91A401268"
#pragma checksum "..\..\..\MainWindow.xaml" "{8829d00f-11b8-4213-878b-770e8597ac16}" "F004E4358EBAA317663957C95CDCBDC56C5FFAC230C7FE76F16BF31B44EE5CE4"
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。

View File

@@ -1,19 +1,24 @@
D:\VSProject\cs2\cs2_united\cs2_chs\bin\x86\Release\cs2_chs.exe.config
D:\VSProject\cs2\cs2_united\cs2_chs\bin\x86\Release\cs2_chs.exe
D:\VSProject\cs2\cs2_united\cs2_chs\bin\x86\Release\cs2_chs.pdb
D:\VSProject\cs2\cs2_united\Release\cs2_chs.exe.config
D:\VSProject\cs2\cs2_united\Release\cs2_chs.exe
D:\VSProject\cs2\cs2_united\Release\cs2_chs.pdb
D:\VSProject\cs2\cs2_united\Debug\cs2_chs.exe.config
D:\VSProject\cs2\cs2_united\Debug\cs2_chs.exe
D:\VSProject\cs2\cs2_united\Debug\cs2_chs.pdb
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\Advance.g.cs
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\MainWindow.g.cs
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\App.g.cs
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\cs2_chs_MarkupCompile.cache
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\cs2_chs_MarkupCompile.lref
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\App.baml
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\Advance.baml
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\MainWindow.baml
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\cs2_chs.g.resources
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\cs2_chs.Properties.Resources.resources
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\cs2_chs.csproj.GenerateResource.cache
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\cs2_chs.csproj.CopyComplete
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\cs2_chs.exe
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\cs2_chs.pdb
D:\VSProject\cs2\cs2_united\Release\cs2_chs.exe.config
D:\VSProject\cs2\cs2_united\Release\cs2_chs.exe
D:\VSProject\cs2\cs2_united\Release\cs2_chs.pdb
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\cs2_chs.csprojAssemblyReference.cache
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\cs2_chs.csproj.CopyComplete
D:\VSProject\cs2\cs2_united\cs2_chs\obj\x86\Release\App.baml

Binary file not shown.

Binary file not shown.

View File

@@ -8,6 +8,6 @@
// </auto-generated>
//------------------------------------------------------------------------------
[assembly: System.Windows.Resources.AssemblyAssociatedContentFileAttribute("02.png")]
[assembly: System.Windows.Resources.AssemblyAssociatedContentFileAttribute("03.png")]

View File

@@ -10,11 +10,11 @@ none
false
TRACE
D:\VSProject\cs2\cs2_united\cs2_chs\App.xaml
11151548125
2-1834107634
7-1981105727
9-330204798
171117567902
MainWindow.xaml;
Advance.xaml;MainWindow.xaml;
False

View File

@@ -10,11 +10,11 @@ none
false
TRACE
D:\VSProject\cs2\cs2_united\cs2_chs\App.xaml
11151548125
2-1834107634
81203939881
10-1440126486
171117567902
MainWindow.xaml;
Advance.xaml;MainWindow.xaml;
True
False

View File

@@ -1,4 +1,5 @@

FD:\VSProject\cs2\cs2_united\cs2_chs\App.xaml;;
FD:\VSProject\cs2\cs2_united\cs2_chs\Advance.xaml;;
FD:\VSProject\cs2\cs2_united\cs2_chs\MainWindow.xaml;;

View File

@@ -2,28 +2,90 @@
#include "BuildIn.h"
#include "Data.h"
extern "C" extern DLLAPI wchar_t ns_str[6192];
extern HMODULE hMod;
extern "C" extern DLLAPI wchar_t ms_str[3096];
extern "C" extern DLLAPI int nID;
extern "C" extern DLLAPI DWORD tPid;
extern MicroData* Index;
extern MicroBinary* Data;
extern "C" extern DLLAPI DWORD m_Addr;
extern "C" extern DLLAPI DWORD VioMode;
signed int (*sub_5FC1C0)() = (signed int(*)(void))0x5FC1C0;//real function point
signed int (*Sur_Sub)() = (signed int(*)(void))m_Addr;//real function point
HMODULE SelfHandle = NULL;
bool start_falg = false;
bool start_falg = false;
bool start_g_flag = false;
bool start_t_flag = false;
PVOID GetProcAddressEx(HANDLE hProc, HMODULE hModule, LPCSTR lpProcName)
{
PVOID pAddress = NULL;
SIZE_T OptSize;
IMAGE_DOS_HEADER DosHeader;
SIZE_T ProcNameLength = lstrlenA(lpProcName) + sizeof(CHAR);//'\0'
//读DOS头
if (ReadProcessMemory(hProc, hModule, &DosHeader, sizeof(DosHeader), &OptSize))
{
IMAGE_NT_HEADERS NtHeader;
//读NT头
if (ReadProcessMemory(hProc, (PVOID)((SIZE_T)hModule + DosHeader.e_lfanew), &NtHeader, sizeof(NtHeader), &OptSize))
{
IMAGE_EXPORT_DIRECTORY ExpDir;
SIZE_T ExportVirtualAddress = NtHeader.OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_EXPORT].VirtualAddress;
//读输出表
if (ExportVirtualAddress && ReadProcessMemory(hProc, (PVOID)((SIZE_T)hModule + ExportVirtualAddress), &ExpDir, sizeof(ExpDir), &OptSize))
{
if (ExpDir.NumberOfFunctions)
{
//x64待定:地址数组存放RVA的数据类型是4字节还是8字节???
SIZE_T* pProcAddressTable = (SIZE_T*)GlobalAlloc(GPTR, ExpDir.NumberOfFunctions * sizeof(SIZE_T));
//读函数地址表
if (ReadProcessMemory(hProc, (PVOID)((SIZE_T)hModule + ExpDir.AddressOfFunctions), pProcAddressTable, ExpDir.NumberOfFunctions * sizeof(PVOID), &OptSize))
{
//x64待定:名称数组存放RVA的数据类型是4字节还是8字节???
SIZE_T* pProcNamesTable = (SIZE_T*)GlobalAlloc(GPTR, ExpDir.NumberOfNames * sizeof(SIZE_T));
//读函数名称表
if (ReadProcessMemory(hProc, (PVOID)((SIZE_T)hModule + ExpDir.AddressOfNames), pProcNamesTable, ExpDir.NumberOfNames * sizeof(PVOID), &OptSize))
{
CHAR* pProcName = (CHAR*)GlobalAlloc(GPTR, ProcNameLength);
//遍历函数名称
for (DWORD i = 0; i < ExpDir.NumberOfNames; i++)
{
if (ReadProcessMemory(hProc, (PVOID)((SIZE_T)hModule + pProcNamesTable[i]), pProcName, ProcNameLength, &OptSize))
{
if (RtlEqualMemory(lpProcName, pProcName, ProcNameLength))
{
//x64待定:函数在地址数组索引的数据类型是2字节还是???
WORD NameOrdinal;
//获取函数在地址表的索引
if (ReadProcessMemory(hProc, (PVOID)((SIZE_T)hModule + ExpDir.AddressOfNameOrdinals + sizeof(NameOrdinal) * i), &NameOrdinal, sizeof(NameOrdinal), &OptSize))
{
pAddress = (PVOID)((SIZE_T)hModule + pProcAddressTable[NameOrdinal]);
}
break;//for
}
}
}
GlobalFree(pProcName);
}
GlobalFree(pProcNamesTable);
}
GlobalFree(pProcAddressTable);
}
}
}
}
return pAddress;
}
BOOL InjectDLL(HANDLE hProcess, LPCWSTR dllFilePathName)
{
if (!hProcess)
return FALSE;
int cch = 1 + lstrlenW(dllFilePathName);
int cb = cch * sizeof(wchar_t);
LPWSTR PszLibFileRemote = (LPWSTR)VirtualAllocEx(hProcess, NULL, cb, MEM_COMMIT, PAGE_READWRITE);
if (!PszLibFileRemote)
return FALSE;
if (!WriteProcessMemory(hProcess, PszLibFileRemote, (LPVOID)dllFilePathName, cb, NULL))
@@ -32,16 +94,27 @@ BOOL InjectDLL(HANDLE hProcess, LPCWSTR dllFilePathName)
LoadLibraryW, PszLibFileRemote, 0, NULL);
if (!hThread) return FALSE;
WaitForSingleObject(hThread, INFINITE);
return TRUE;
}
extern char IpfData[16];
#define PutInt(a) _itoa_s(a,IpfData,10);MessageBoxA(0,IpfData,"num",0);
DWORD(WINAPI* pGetGlyphOutlineW)(
_In_ HDC hdc,
_In_ UINT uChar,
_In_ UINT fuFormat,
_Out_ LPGLYPHMETRICS lpgm,
_In_ DWORD cjBuffer,
_Out_writes_bytes_opt_(cjBuffer) LPVOID pvBuffer,
_In_ CONST MAT2* lpmat2
) = GetGlyphOutlineW;
BOOL(WINAPI* pTextOutW)(_In_ HDC hdc, _In_ int x, _In_ int y, _In_reads_(c) LPCWSTR lpString, _In_ int c) = TextOutW;
HANDLE InjectSelfTo(LPCSTR inptr)
{
// MessageBoxA(0, inptr,"",0);
HANDLE currentThread = NULL;
LPPROCESS_INFORMATION info = new PROCESS_INFORMATION;
STARTUPINFOA si = { sizeof(si) };
do {
@@ -55,9 +128,6 @@ HANDLE InjectSelfTo(LPCSTR inptr)
// MessageBox(0, L"1", L"", 0);
wchar_t m_Path[MAX_PATH];
GetModuleFileName(hMod, m_Path, MAX_PATH);
if (!InjectDLL(info->hProcess, m_Path)) {
MessageBoxA(0, "", "", 0);
return 0;
@@ -65,25 +135,22 @@ HANDLE InjectSelfTo(LPCSTR inptr)
currentThread = info->hThread;
tPid = info->dwProcessId;
} while (0);
HANDLE hHookStart = CreateRemoteThread(info->hProcess, NULL, 0, (LPTHREAD_START_ROUTINE)
::GetProcAddress(hMod, "start"), 0, 0, NULL);
::GetProcAddressEx(info->hProcess, hMod, "LoadExerte"), 0, 0, NULL);
if (!hHookStart)
{
MessageBox(0, L"Failed to create remote thread", L"error", MB_ICONERROR);
PutInt(GetLastError());
MessageBox(0, L"Failed to create remote thread(LoadExerte)", L"error", MB_ICONERROR);
return 0;
}
WaitForSingleObject(hHookStart, 0);
WaitForSingleObject(hHookStart, 0xFFFFFFFF);
ResumeThread(info->hThread);
delete info;
lstrcpyW(ms_str, L" ");
ns_str[0] = L'\0';
return currentThread;
}
signed int Fakesub_5FC1C0()
signed int Fake_Sub()
{
DWORD leax, lebx, lecx, ledx, lesi, ledi;
__asm {
@@ -105,8 +172,7 @@ signed int Fakesub_5FC1C0()
mov esi, dword ptr[lesi]
mov edi, dword ptr[ledi]
}
return sub_5FC1C0();
return Sur_Sub();
}
DWORD WINAPI Th(LPVOID lp) {
char a[16];
@@ -117,29 +183,218 @@ DWORD WINAPI Th(LPVOID lp) {
}
return 0;
}
DWORD WINAPI fGetGlyphOutlineW(
_In_ HDC hdc,
_In_ UINT uChar,
_In_ UINT fuFormat,
_Out_ LPGLYPHMETRICS lpgm,
_In_ DWORD cjBuffer,
_Out_writes_bytes_opt_(cjBuffer) LPVOID pvBuffer,
_In_ CONST MAT2* lpmat2
)
{
wstring loca = L"";
loca += (WCHAR)uChar;
if(lstrlenW(ns_str)>=5999)
ns_str[0] = L'\0';
lstrcatW(ns_str, loca.c_str());
return pGetGlyphOutlineW(hdc, L'A', fuFormat, lpgm, cjBuffer, pvBuffer, lpmat2);
}
BOOL WINAPI fTextOutW(_In_ HDC hdc, _In_ int x, _In_ int y, _In_reads_(c) LPCWSTR lpString, _In_ int c)
{
return pTextOutW(hdc, x, y, L"A", c);
}
void start()
{
// MessageBoxA(0,"b","",0);
if (start_falg)
return;
DetourRestoreAfterWith();
DetourTransactionBegin();
DetourUpdateThread(GetCurrentThread());
DetourAttach(&(PVOID&)sub_5FC1C0, Fakesub_5FC1C0);
DetourAttach(&(PVOID&)Sur_Sub, Fake_Sub);
DetourTransactionCommit();
Index = new MicroData(L"Index.ax", sizeof(IndexData));
Data = new MicroBinary(L"Data.ax");
Index->Load();
Data->Load();
start_falg = TRUE;
// CreateThread(0,0,Th,0,0,0);
}
void end()
{
// MessageBoxA(0,"a","",0);
if (!start_falg)
return;
start_falg = FALSE;
DetourTransactionBegin();
DetourUpdateThread(GetCurrentThread());
DetourDetach(&(PVOID&)sub_5FC1C0, Fakesub_5FC1C0);
DetourDetach(&(PVOID&)Sur_Sub, Fake_Sub);
DetourTransactionCommit();
}
void start_g()
{
if (start_g_flag)
return;
start_g_flag = TRUE;
DetourRestoreAfterWith();
DetourTransactionBegin();
DetourUpdateThread(GetCurrentThread());
DetourAttach(&(PVOID&)pGetGlyphOutlineW, fGetGlyphOutlineW);
DetourTransactionCommit();
}
void end_g()
{
if (!start_g_flag)
return;
start_g_flag = FALSE;
DetourTransactionBegin();
DetourUpdateThread(GetCurrentThread());
DetourDetach(&(PVOID&)pGetGlyphOutlineW, fGetGlyphOutlineW);
DetourTransactionCommit();
}
void start_t()
{
if (start_t_flag)
return;
start_t_flag = TRUE;
DetourRestoreAfterWith();
DetourTransactionBegin();
DetourUpdateThread(GetCurrentThread());
DetourAttach(&(PVOID&)pTextOutW, fTextOutW);
DetourTransactionCommit();
}
void end_t()
{
if (!start_t_flag)
return;
start_t_flag = FALSE;
DetourTransactionBegin();
DetourUpdateThread(GetCurrentThread());
DetourDetach(&(PVOID&)pTextOutW, fTextOutW);
DetourTransactionCommit();
}
void StartReplace()
{
HANDLE terp = OpenProcess(PROCESS_ALL_ACCESS, FALSE, tPid);
HANDLE hHookStart = CreateRemoteThread(terp, NULL, 0, (LPTHREAD_START_ROUTINE)
::GetProcAddressEx(terp,hMod, "start"), 0, 0, NULL);
if (!hHookStart)
{
MessageBox(0, L"Failed to create remote thread(StartReplace)", L"error", MB_ICONERROR);
return;
}
WaitForSingleObject(hHookStart, 0xFFFFFFFF);
if (VioMode == 0) {
HANDLE hgHookStart = CreateRemoteThread(terp, NULL, 0, (LPTHREAD_START_ROUTINE)
::GetProcAddressEx(terp, hMod, "end_g"), 0, 0, NULL);
if (!hgHookStart)
{
MessageBox(0, L"Failed to create remote thread(StartReplace)", L"error", MB_ICONERROR);
return;
}
WaitForSingleObject(hgHookStart, 0xFFFFFFFF);
}
if (VioMode == 1) {
HANDLE hgHookStart = CreateRemoteThread(terp, NULL, 0, (LPTHREAD_START_ROUTINE)
::GetProcAddressEx(terp, hMod, "end_t"), 0, 0, NULL);
if (!hgHookStart)
{
MessageBox(0, L"Failed to create remote thread(StartReplace)", L"error", MB_ICONERROR);
return;
}
WaitForSingleObject(hgHookStart, 0xFFFFFFFF);
}
CloseHandle(terp);
}
void EndReplace()
{
HANDLE terp = OpenProcess(PROCESS_ALL_ACCESS, FALSE, tPid);
HANDLE hHookStart = CreateRemoteThread(terp, NULL, 0, (LPTHREAD_START_ROUTINE)
::GetProcAddressEx(terp, hMod, "end"), 0, 0, NULL);
if (!hHookStart)
{
MessageBox(0, L"Failed to create remote thread(EndReplace)", L"error", MB_ICONERROR);
return;
}
WaitForSingleObject(hHookStart, 0xFFFFFFFF);
if (VioMode == 0) {
HANDLE hgHookStart = CreateRemoteThread(terp, NULL, 0, (LPTHREAD_START_ROUTINE)
::GetProcAddressEx(terp, hMod, "start_g"), 0, 0, NULL);
if (!hgHookStart)
{
MessageBox(0, L"Failed to create remote thread(EndReplace)", L"error", MB_ICONERROR);
return;
}
WaitForSingleObject(hgHookStart, 0xFFFFFFFF);
}
if (VioMode == 1) {
HANDLE hgHookStart = CreateRemoteThread(terp, NULL, 0, (LPTHREAD_START_ROUTINE)
::GetProcAddressEx(terp, hMod, "start_t"), 0, 0, NULL);
if (!hgHookStart)
{
MessageBox(0, L"Failed to create remote thread(StartReplace)", L"error", MB_ICONERROR);
return;
}
WaitForSingleObject(hgHookStart, 0xFFFFFFFF);
}
CloseHandle(terp);
}
void ChangeGToT()
{
HANDLE terp = OpenProcess(PROCESS_ALL_ACCESS, FALSE, tPid);
HANDLE hgHookStart = CreateRemoteThread(terp, NULL, 0, (LPTHREAD_START_ROUTINE)
::GetProcAddressEx(terp, hMod, "end_g"), 0, 0, NULL);
if (!hgHookStart)
{
MessageBox(0, L"Failed to create remote thread(StartReplace)", L"error", MB_ICONERROR);
return;
}
WaitForSingleObject(hgHookStart, 0xFFFFFFFF);
HANDLE htHookStart = CreateRemoteThread(terp, NULL, 0, (LPTHREAD_START_ROUTINE)
::GetProcAddressEx(terp, hMod, "start_t"), 0, 0, NULL);
if (!htHookStart)
{
MessageBox(0, L"Failed to create remote thread(StartReplace)", L"error", MB_ICONERROR);
return;
}
WaitForSingleObject(htHookStart, 0xFFFFFFFF);
CloseHandle(terp);
}
void ChangeTToG()
{
HANDLE terp = OpenProcess(PROCESS_ALL_ACCESS, FALSE, tPid);
HANDLE hgHookStart = CreateRemoteThread(terp, NULL, 0, (LPTHREAD_START_ROUTINE)
::GetProcAddressEx(terp, hMod, "end_t"), 0, 0, NULL);
if (!hgHookStart)
{
MessageBox(0, L"Failed to create remote thread(StartReplace)", L"error", MB_ICONERROR);
return;
}
WaitForSingleObject(hgHookStart, 0xFFFFFFFF);
HANDLE htHookStart = CreateRemoteThread(terp, NULL, 0, (LPTHREAD_START_ROUTINE)
::GetProcAddressEx(terp, hMod, "start_g"), 0, 0, NULL);
if (!htHookStart)
{
MessageBox(0, L"Failed to create remote thread(StartReplace)", L"error", MB_ICONERROR);
return;
}
WaitForSingleObject(htHookStart, 0xFFFFFFFF);
CloseHandle(terp);
}
void LoadExerte()
{
Index = new MicroData(L"Index.ax", sizeof(IndexData));
Data = new MicroBinary(L"Data.ax");
Index->Load();
Data->Load();
}

View File

@@ -1,13 +1,38 @@
#pragma once
#include <Windows.h>
#define DLLAPI __declspec(dllexport)
BOOL InjectDLL(HANDLE hProcess, LPCWSTR dllFilePathName);//Inject dll to the signal process
extern "C" DLLAPI HANDLE InjectSelfTo(LPCSTR inptr);//Inject self
signed int Fake_Sub();//hooked function point
signed int Fakesub_5FC1C0();//hooked function point
DWORD WINAPI fGetGlyphOutlineW(
_In_ HDC hdc,
_In_ UINT uChar,
_In_ UINT fuFormat,
_Out_ LPGLYPHMETRICS lpgm,
_In_ DWORD cjBuffer,
_Out_writes_bytes_opt_(cjBuffer) LPVOID pvBuffer,
_In_ CONST MAT2* lpmat2
);
BOOL WINAPI fTextOutW(_In_ HDC hdc, _In_ int x, _In_ int y, _In_reads_(c) LPCWSTR lpString, _In_ int c);
extern "C" DLLAPI void start();//start hook
void end();//end hook
extern "C" DLLAPI void end();//end hook
extern "C" DLLAPI void start_g();//start hook
extern "C" DLLAPI void end_g();//end hook
extern "C" DLLAPI void start_t();//start hook
extern "C" DLLAPI void end_t();//end hook
extern "C" DLLAPI void StartReplace();
extern "C" DLLAPI void EndReplace();
extern "C" DLLAPI void ChangeGToT();
extern "C" DLLAPI void ChangeTToG();
extern "C" DLLAPI void LoadExerte();
PVOID GetProcAddressEx(HANDLE hProc, HMODULE hModule, LPCSTR lpProcName);

View File

@@ -1,31 +1,29 @@
#include "pch.h"
#include "Data.h"
extern MicroData* Index;
extern MicroBinary* Data;
extern "C" extern DLLAPI double saveProcess;
extern HMODULE hMod;
extern "C" extern DLLAPI wchar_t ms_str[3096];
extern "C" extern DLLAPI int nID;
extern "C" extern DLLAPI DWORD tPid;
DWORD CreateDataExportEx(LPCWSTR data)
{
// MessageBoxW(0, data,L"",0);
WCHAR sjp[3096];
WCHAR scn[3096];
int lasger = GEtLargestID();
if (nID == 0) {
MessageBox(0, L"the ID value seems not available,therefore this action has been refused", L"error", MB_ICONERROR);
saveProcess = 1.0;
return 1;
}
if (nID - lasger > 2) {
MessageBox(0, L"the ID value seems not available,therefore this action has been refused", L"error", MB_ICONERROR);
saveProcess = 1.0;
return 1;
}
if (!GetDataByID(nID - 1, sjp, scn)) {
CreateDataByID(nID - 1, ms_str, 2 * (lstrlenW(ms_str) + 1), data, 2 * (lstrlenW(data) + 1));
WCHAR abv[16];
_itow_s(nID - 1, abv, 10);
@@ -37,6 +35,7 @@ DWORD CreateDataExportEx(LPCWSTR data)
str += L"->";
str += data;
MessageBoxW(NULL, str.c_str(), L"successed to add rule", MB_ICONINFORMATION);
saveProcess = 1.0;
return 1;
}
else {
@@ -53,8 +52,6 @@ DWORD CreateDataExportEx(LPCWSTR data)
saveProcess = 1.0;
return 1;
}
int p = 0;
MicroData *_Index=new MicroData(L"~Index.ax", sizeof(IndexData));
MicroBinary* _Data = new MicroBinary(L"~Data.ax");
@@ -64,12 +61,10 @@ DWORD CreateDataExportEx(LPCWSTR data)
createData.Id = p;
createData.JpLength = 2 * (lstrlenW(sjp) + 1);
createData.CnLength = 2 * (lstrlenW(data) + 1);
createData.JpBass = _Data->Size();
_Data->Push(sjp, 2 * (lstrlenW(sjp) + 1));
createData.CnBass = _Data->Size();
_Data->Push(data, 2 * (lstrlenW(data) + 1));
_Index->Push(&createData);
_Index->Save();
_Data->Save();
@@ -79,12 +74,10 @@ DWORD CreateDataExportEx(LPCWSTR data)
createData.Id = p;
createData.JpLength = 2 * (lstrlenW(sjp) + 1);
createData.CnLength = 2 * (lstrlenW(scn) + 1);
createData.JpBass = _Data->Size();
_Data->Push(sjp, 2 * (lstrlenW(sjp) + 1));
createData.CnBass = _Data->Size();
_Data->Push(scn, 2 * (lstrlenW(scn) + 1));
_Index->Push(&createData);
_Index->Save();
_Data->Save();
@@ -93,7 +86,6 @@ DWORD CreateDataExportEx(LPCWSTR data)
p++;
}
delete _Index;
delete _Data;
delete Index;
@@ -102,19 +94,15 @@ DWORD CreateDataExportEx(LPCWSTR data)
saveProcess = 1;
DeleteFile(L"Data.ax");
DeleteFile(L"Index.ax");
rename("~Data.ax", "Data.ax");
rename("~Index.ax", "Index.ax");
Index = new MicroData(L"Index.ax", sizeof(IndexData));
Data = new MicroBinary(L"Data.ax");
Index->Load();
Data->Load();
return 1;
}
}
void CreateDataExport(WCHAR data[])
{
DWORD dwOld;
@@ -125,48 +113,39 @@ void CreateDataExport(WCHAR data[])
if (!PszLibFileRemote)
MessageBoxA(0, "", "", 0);
WriteProcessMemory(hTr, PszLibFileRemote, data, 2 * (lstrlenW(data) + 1), &dwOld);
HANDLE hHookStart = CreateRemoteThread(hTr, NULL, 0, (LPTHREAD_START_ROUTINE)
::GetProcAddress(hMod, "CreateDataExportEx"), PszLibFileRemote, 0, NULL);
if (!hHookStart)
MessageBoxA(0, "", "", 0);
WaitForSingleObject(hHookStart, INFINITE);
}
BOOL CreateDataByID(int ID, LPCWSTR jpBuff, int ljp, LPCWSTR cnBuffer, int lcn)
{
IndexData createData;
createData.Id = ID;
createData.JpLength = ljp;
createData.CnLength = lcn;
createData.JpBass = Data->Size();
Data->Push(jpBuff, ljp);
createData.CnBass = Data->Size();
Data->Push(cnBuffer, lcn);
Index->Push(&createData);
Index->Save();
Data->Save();
return 0;
}
BOOL GetDataByJP(int* ID, LPCWSTR jpBuff, LPWSTR cnBuffer)
{
IndexData index;
WCHAR njp[3096];
WCHAR ncn[3096];
(*Index) = 0;
do {
Index->Get(&index);
( *Data) = index.JpBass;
Data->Sub(njp, index.JpLength);
(* Data) = index.CnBass;
Data->Sub(ncn, index.CnLength);
if (lstrcmpW(jpBuff, njp) == 0) {
*ID = index.Id;
lstrcpyW(cnBuffer, ncn);
@@ -174,7 +153,6 @@ BOOL GetDataByJP(int* ID, LPCWSTR jpBuff, LPWSTR cnBuffer)
(*Data) = 0;
return 1;
}
if ((*Index)++)
continue;
else {
@@ -184,16 +162,13 @@ BOOL GetDataByJP(int* ID, LPCWSTR jpBuff, LPWSTR cnBuffer)
}
} while (1);
}
BOOL GetDataByID(int ID, LPWSTR jpBuff, LPWSTR cnBuffer)
{
//
if (ID < 0)return 0;
IndexData index;
(*Index) = ID;
Index->Get(&index);
if (index.Id != ID)
{
(*Index) = 0;
@@ -209,18 +184,14 @@ BOOL GetDataByID(int ID, LPWSTR jpBuff, LPWSTR cnBuffer)
}
} while (1);
}
(*Data) = index.JpBass;
Data->Sub(jpBuff, index.JpLength);
(*Data) = index.CnBass;
Data->Sub(cnBuffer, index.CnLength);
(*Data) = 0;
(*Index) = 0;
return 1;
}
int GEtLargestID()
{
IndexData index;
@@ -230,7 +201,6 @@ int GEtLargestID()
if (index.Id > result)
result = index.Id;
} while ((*Index)++);
(*Index) = 0;
return result;
}

View File

@@ -1,13 +1,9 @@
#pragma once
#include <Windows.h>
#define DLLAPI __declspec(dllexport)
extern "C" DLLAPI void CreateDataExport(WCHAR data[]);
BOOL CreateDataByID(int ID, LPCWSTR jpBuff, int ljp, LPCWSTR cnBuffer, int lcn);
BOOL GetDataByJP(int* ID, LPCWSTR jpBuff, LPWSTR cnBuffer);
BOOL GetDataByID(int ID, LPWSTR jpBuff, LPWSTR cnBuffer);
int GEtLargestID();
extern "C" DLLAPI DWORD CreateDataExportEx(LPCWSTR path);

BIN
cs2_patch/Debug/BuildIn.obj Normal file

Binary file not shown.

BIN
cs2_patch/Debug/Data.obj Normal file

Binary file not shown.

BIN
cs2_patch/Debug/Replace.obj Normal file

Binary file not shown.

View File

@@ -1 +1,9 @@

 pch.cpp
BuildIn.cpp
Data.cpp
dllmain.cpp
Replace.cpp
D:\VSProject\cs2\cs2_united\cs2_patch\Replace.cpp(56,23): warning C4018: “<”: 有符号/无符号不匹配
正在生成代码...
正在创建库 D:\VSProject\cs2\cs2_united\Debug\cs2_patch.lib 和对象 D:\VSProject\cs2\cs2_united\Debug\cs2_patch.exp
cs2_patch.vcxproj -> D:\VSProject\cs2\cs2_united\Debug\cs2_patch.dll

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,2 @@
#TargetFrameworkVersion=v4.0:PlatformToolSet=v142:EnableManagedIncrementalBuild=false:VCToolArchitecture=Native32Bit:WindowsTargetPlatformVersion=10.0
Debug|Win32|D:\VSProject\cs2\cs2_united\|

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
cs2_patch/Debug/dllmain.obj Normal file

Binary file not shown.

BIN
cs2_patch/Debug/pch.obj Normal file

Binary file not shown.

BIN
cs2_patch/Debug/vc142.idb Normal file

Binary file not shown.

BIN
cs2_patch/Debug/vc142.pdb Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,14 +1,15 @@
d:\vsproject\cs2\cs2_united\cs2_patch\release\cs2_patch.pch
d:\vsproject\cs2\cs2_united\cs2_patch\release\vc142.pdb
d:\vsproject\cs2\cs2_united\cs2_patch\release\pch.obj
d:\vsproject\cs2\cs2_united\cs2_patch\release\dllmain.obj
d:\vsproject\cs2\cs2_united\cs2_patch\release\replace.obj
d:\vsproject\cs2\cs2_united\cs2_patch\release\buildin.obj
d:\vsproject\cs2\cs2_united\cs2_patch\release\dllmain.obj
d:\vsproject\cs2\cs2_united\cs2_patch\release\data.obj
d:\vsproject\cs2\cs2_united\cs2_patch\release\buildin.obj
d:\vsproject\cs2\cs2_united\release\cs2_patch.lib
d:\vsproject\cs2\cs2_united\release\cs2_patch.exp
d:\vsproject\cs2\cs2_united\release\cs2_patch.ipdb
d:\vsproject\cs2\cs2_united\release\cs2_patch.iobj
d:\vsproject\cs2\cs2_united\release\cs2_patch.dll
d:\vsproject\cs2\cs2_united\release\cs2_patch.pdb
d:\vsproject\cs2\cs2_united\cs2_patch\release\cs2_patch.tlog\cl.command.1.tlog
d:\vsproject\cs2\cs2_united\cs2_patch\release\cs2_patch.tlog\cl.read.1.tlog

View File

@@ -1,8 +1,9 @@
 dllmain.cpp
 BuildIn.cpp
dllmain.cpp
正在创建库 D:\VSProject\cs2\cs2_united\Release\cs2_patch.lib 和对象 D:\VSProject\cs2\cs2_united\Release\cs2_patch.exp
正在生成代码
0 of 112 functions ( 0.0%) were compiled, the rest were copied from previous compilation.
79 of 129 functions (61.2%) were compiled, the rest were copied from previous compilation.
0 functions were new in current compilation
0 functions had inline decision re-evaluated but remain unchanged
6 functions had inline decision re-evaluated but remain unchanged
已完成代码的生成
cs2_patch.vcxproj -> D:\VSProject\cs2\cs2_united\Release\cs2_patch.dll

Binary file not shown.

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More