Skip to content

Commit

Permalink
V2.8:支持直接在设置页面设置开机启动
Browse files Browse the repository at this point in the history
  • Loading branch information
kenvix committed Sep 30, 2016
1 parent 2e4e530 commit 33aa671
Show file tree
Hide file tree
Showing 38 changed files with 249 additions and 113 deletions.
Binary file modified .vs/USBCopyer/v14/.suo
Binary file not shown.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
#USBCopyer: 插上U盘自动复制U盘文件
[![Build status](https://ci.appveyor.com/api/projects/status/xv5b8wf0h7cuy897?svg=true)](https://ci.appveyor.com/project/kenvix/usbcopyer)
偷U盘文件的神器,支持设置冲突解决方案,支持延迟复制,支持扩展名黑白名单,支持磁盘分区号/序列号黑名单,支持日志,支持弹出U盘时强制停止复制防止占用
本程序有两个图标,默认图标表示当前处于空闲状态,红色图标表示当前正在复制文件(工作中)
![Screenshot](https://git.oschina.net/kenvix/USBCopyer/raw/master/usbcopyer.jpg)
Expand Down
19 changes: 19 additions & 0 deletions USBCopyer/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,25 @@ static void Main(string[] args)
case "-hide":
showicon = false;
break;

case "/gui":
case "-gui":
showicon = true;
break;

case "/reset":
case "-reset":
try
{
Properties.Settings.Default.Reset();
Properties.Settings.Default.Save();
Environment.Exit(0);
}
catch (Exception)
{
Environment.Exit(1);
}
break;
}
}
//设置应用程序处理异常方式:ThreadException处理
Expand Down
4 changes: 2 additions & 2 deletions USBCopyer/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,5 @@
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
// 方法是按如下所示使用“*”: :
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("2.7.0.0")]
[assembly: AssemblyFileVersion("2.7.0.0")]
[assembly: AssemblyVersion("2.8.0.0")]
[assembly: AssemblyFileVersion("2.8.0.0")]
24 changes: 24 additions & 0 deletions USBCopyer/Properties/Settings.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions USBCopyer/Properties/Settings.settings
Original file line number Diff line number Diff line change
Expand Up @@ -35,5 +35,11 @@
<Setting Name="blackid" Type="System.String" Scope="User">
<Value Profile="(Default)" />
</Setting>
<Setting Name="autorun" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="autorunhide" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
</Settings>
</SettingsFile>
183 changes: 96 additions & 87 deletions USBCopyer/Setting.Designer.cs

Large diffs are not rendered by default.

52 changes: 43 additions & 9 deletions USBCopyer/Setting.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
using System.IO;
using System.Text.RegularExpressions;
using System.Windows.Forms;
using Microsoft.Win32;

namespace USBCopyer
{
Expand All @@ -26,6 +27,8 @@ public Setting()
copynoext.Checked = Properties.Settings.Default.copynoext;
blackdisk.Text = Properties.Settings.Default.blackdisk;
blackid.Text = Properties.Settings.Default.blackid;
autorun.Checked = Properties.Settings.Default.autorun;
autorunhide.Checked = Properties.Settings.Default.autorunhide;
}

private void logButton_Click(object sender, EventArgs e)
Expand Down Expand Up @@ -86,6 +89,39 @@ private void saveButton_Click(object sender, EventArgs e)
}
host.dir = Properties.Settings.Default.dir + "\\";
}
if(autorunhide.Checked && !autorun.Checked)
{
autorun.Checked = true;
}
try
{
RegistryKey run = Registry.LocalMachine.CreateSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run");
if (Properties.Settings.Default.autorun != autorun.Checked)
{
Properties.Settings.Default.autorun = autorun.Checked;
if (autorun.Checked)
{
run.SetValue("USBCopyer", Application.ExecutablePath);
}
else
{
run.DeleteValue("USBCopyer");
}
}
if (Properties.Settings.Default.autorunhide!= autorunhide.Checked)
{
Properties.Settings.Default.autorunhide = autorunhide.Checked;
if (autorunhide.Checked)
{
run.SetValue("USBCopyer", Application.ExecutablePath + " /hide");
}
else
{
run.SetValue("USBCopyer", Application.ExecutablePath);
}
}
}
catch (Exception) { }
Properties.Settings.Default.Save();
}
catch(Exception ex)
Expand All @@ -96,7 +132,7 @@ private void saveButton_Click(object sender, EventArgs e)

private void linkLabel2_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
MessageBox.Show("USBCopyer.exe [/hide] \r\n\r\n /hide 以隐藏模式启动,只能通过任务管理器结束进程","命令行帮助");
MessageBox.Show("USBCopyer.exe [/hide] [/gui] [/reset] \r\n\r\n /hide 以隐藏模式启动,只能通过任务管理器结束进程\r\n /gui 除非使用 /hide 参数,否则无论如何都不要使用隐藏模式启动\r\n /reset 恢复默认设置并退出,若失败,返回退出码1\r\n\r\n例如,以下命令使USBCopyer以隐藏模式启动:\r\nUSBCopyer.exe /hide", "命令行帮助");
}

public static bool IsInteger(string s)
Expand All @@ -107,14 +143,7 @@ public static bool IsInteger(string s)

private void linkLabel3_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
if(MessageBox.Show("你可以在 \"开始菜单\"\"启动\" 文件夹创建本程序的快捷方式,然后程序就可以自动启动了。\r\n\r\n如果你想要以隐藏模式启动程序,请右键快捷方式,点击 属性,在 目标 后面加上 /hide,在 USBCopyer.exe 后加上 /hide 即可\r\n\r\n如果你启用了UAC并且因开机时无法获取管理员权限而导致程序无法启动,那么用添加计划任务的方法替代创建快捷方式的方法\r\n\r\n按 确定 打开 \"启动\" 目录,按 取消 返回", "开机启动帮助", MessageBoxButtons.OKCancel, MessageBoxIcon.Information) == DialogResult.OK)
{
try
{
Process.Start("explorer.exe", Environment.GetFolderPath(Environment.SpecialFolder.Startup));
}
catch (Exception) { }
}

}

private void linkLabel4_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
Expand All @@ -131,5 +160,10 @@ private void linkLabel6_LinkClicked(object sender, LinkLabelLinkClickedEventArgs
{
MessageBox.Show("当你插入磁盘时,程序会通知你 \"存储设备已插入\",磁盘卷标后面的英文字母或数字即为磁盘序列号。如 F: - A636F053 则表示磁盘序列号为 A636F053\r\n你可以在程序日志中找到序列号\r\n\r\n使用磁盘序列号可以明确指定不复制某个磁盘,而分区号只能指定不复制某个分区。你可以使用磁盘序列号黑名单来实现从自动一个U盘复制文件到另一个U盘", "获取磁盘序列号");
}

private void linkLabel9_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
Properties.Settings.Default.Reset();
}
}
}
7 changes: 3 additions & 4 deletions USBCopyer/Setting.resx
Original file line number Diff line number Diff line change
Expand Up @@ -117,8 +117,7 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="folderBrowser.TrayLocation" type="System.Drawing.Point, System.Drawing">
<value>17, 17</value>
</data>
<metadata name="folderBrowser.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 9</value>
</metadata>
</root>
5 changes: 5 additions & 0 deletions USBCopyer/USBCopyer.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,8 @@
<ApplicationManifest>Properties\app.manifest</ApplicationManifest>
</PropertyGroup>
<ItemGroup>
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Management" />
Expand All @@ -58,6 +60,9 @@
<Reference Include="System.Drawing" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="UIAutomationProvider" />
<Reference Include="WindowsBase" />
<Reference Include="WindowsFormsIntegration" />
</ItemGroup>
<ItemGroup>
<Compile Include="Host.cs">
Expand Down
6 changes: 6 additions & 0 deletions USBCopyer/app.config
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,12 @@
<setting name="blackid" serializeAs="String">
<value />
</setting>
<setting name="autorun" serializeAs="String">
<value>False</value>
</setting>
<setting name="autorunhide" serializeAs="String">
<value>False</value>
</setting>
</USBCopyer.Properties.Settings>
</userSettings>
</configuration>
6 changes: 6 additions & 0 deletions USBCopyer/bin/Debug/USBCopyer.exe.config
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,12 @@
<setting name="blackid" serializeAs="String">
<value />
</setting>
<setting name="autorun" serializeAs="String">
<value>False</value>
</setting>
<setting name="autorunhide" serializeAs="String">
<value>False</value>
</setting>
</USBCopyer.Properties.Settings>
</userSettings>
</configuration>
Binary file modified USBCopyer/bin/Debug/USBCopyer.pdb
Binary file not shown.
6 changes: 6 additions & 0 deletions USBCopyer/bin/Debug/USBCopyer.vshost.exe.config
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,12 @@
<setting name="blackid" serializeAs="String">
<value />
</setting>
<setting name="autorun" serializeAs="String">
<value>False</value>
</setting>
<setting name="autorunhide" serializeAs="String">
<value>False</value>
</setting>
</USBCopyer.Properties.Settings>
</userSettings>
</configuration>
11 changes: 0 additions & 11 deletions USBCopyer/bin/Debug/USBCopyer.vshost.exe.manifest

This file was deleted.

Binary file modified USBCopyer/bin/Release/USBCopyer.exe
Binary file not shown.
6 changes: 6 additions & 0 deletions USBCopyer/bin/Release/USBCopyer.exe.config
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,12 @@
<setting name="blackid" serializeAs="String">
<value />
</setting>
<setting name="autorun" serializeAs="String">
<value>False</value>
</setting>
<setting name="autorunhide" serializeAs="String">
<value>False</value>
</setting>
</USBCopyer.Properties.Settings>
</userSettings>
</configuration>
Binary file modified USBCopyer/bin/Release/USBCopyer.pdb
Binary file not shown.
6 changes: 6 additions & 0 deletions USBCopyer/bin/Release/USBCopyer.vshost.exe.config
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,12 @@
<setting name="blackid" serializeAs="String">
<value />
</setting>
<setting name="autorun" serializeAs="String">
<value>False</value>
</setting>
<setting name="autorunhide" serializeAs="String">
<value>False</value>
</setting>
</USBCopyer.Properties.Settings>
</userSettings>
</configuration>
Binary file modified USBCopyer/obj/Debug/DesignTimeResolveAssemblyReferences.cache
Binary file not shown.
Binary file modified USBCopyer/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
Binary file not shown.
Binary file modified USBCopyer/obj/Debug/USBCopyer.Host.resources
Binary file not shown.
Binary file modified USBCopyer/obj/Debug/USBCopyer.Properties.Resources.resources
Binary file not shown.
Binary file modified USBCopyer/obj/Debug/USBCopyer.Setting.resources
Binary file not shown.
10 changes: 10 additions & 0 deletions USBCopyer/obj/Debug/USBCopyer.csproj.FileListAbsolute.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,13 @@ C:\Work Station\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Debug\USBCopyer.Hos
C:\Work Station\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Debug\USBCopyer.Setting.resources
C:\Work Station\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Debug\USBCopyer.Properties.Resources.resources
C:\Work Station\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Debug\USBCopyer.csproj.GenerateResource.Cache
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\bin\Debug\USBCopyer.exe.config
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Debug\USBCopyer.exe
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Debug\USBCopyer.pdb
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\bin\Debug\USBCopyer.exe
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\bin\Debug\USBCopyer.pdb
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Debug\USBCopyer.csprojResolveAssemblyReference.cache
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Debug\USBCopyer.Host.resources
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Debug\USBCopyer.Setting.resources
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Debug\USBCopyer.Properties.Resources.resources
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Debug\USBCopyer.csproj.GenerateResource.Cache
Binary file modified USBCopyer/obj/Debug/USBCopyer.csproj.GenerateResource.Cache
Binary file not shown.
Binary file modified USBCopyer/obj/Debug/USBCopyer.csprojResolveAssemblyReference.cache
Binary file not shown.
Binary file modified USBCopyer/obj/Debug/USBCopyer.exe
Binary file not shown.
Binary file modified USBCopyer/obj/Debug/USBCopyer.pdb
Binary file not shown.
Binary file modified USBCopyer/obj/Release/DesignTimeResolveAssemblyReferences.cache
Binary file not shown.
Binary file not shown.
Binary file modified USBCopyer/obj/Release/TempPE/Properties.Resources.Designer.cs.dll
Binary file not shown.
Binary file modified USBCopyer/obj/Release/USBCopyer.Setting.resources
Binary file not shown.
10 changes: 10 additions & 0 deletions USBCopyer/obj/Release/USBCopyer.csproj.FileListAbsolute.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,13 @@ C:\Work Station\OneDrive\WebProject\OneDrive\C# Projects\USBCopyer\USBCopyer\obj
C:\Work Station\OneDrive\WebProject\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Release\USBCopyer.Setting.resources
C:\Work Station\OneDrive\WebProject\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Release\USBCopyer.Properties.Resources.resources
C:\Work Station\OneDrive\WebProject\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Release\USBCopyer.csproj.GenerateResource.Cache
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\bin\Release\USBCopyer.exe.config
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Release\USBCopyer.exe
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Release\USBCopyer.pdb
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\bin\Release\USBCopyer.exe
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\bin\Release\USBCopyer.pdb
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Release\USBCopyer.csprojResolveAssemblyReference.cache
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Release\USBCopyer.Host.resources
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Release\USBCopyer.Setting.resources
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Release\USBCopyer.Properties.Resources.resources
C:\Users\wmzhi\Desktop\OneDrive\C# Projects\USBCopyer\USBCopyer\obj\Release\USBCopyer.csproj.GenerateResource.Cache
Binary file modified USBCopyer/obj/Release/USBCopyer.csproj.GenerateResource.Cache
Binary file not shown.
Binary file not shown.
Binary file modified USBCopyer/obj/Release/USBCopyer.exe
Binary file not shown.
Binary file modified USBCopyer/obj/Release/USBCopyer.pdb
Binary file not shown.

0 comments on commit 33aa671

Please sign in to comment.