diff --git a/vs2010/.gitignore b/vs2010/.gitignore
new file mode 100644
index 0000000..b188564
--- /dev/null
+++ b/vs2010/.gitignore
@@ -0,0 +1,7 @@
+*.vcproj.user
+*.vcproj.filters
+*.ncb
+*.aps
+*.suo
+Debug
+Release
diff --git a/vs2010/plugins/mod_auth_simple/mod_auth_simple.vcxproj b/vs2010/plugins/mod_auth_simple/mod_auth_simple.vcxproj
new file mode 100644
index 0000000..0298133
--- /dev/null
+++ b/vs2010/plugins/mod_auth_simple/mod_auth_simple.vcxproj
@@ -0,0 +1,73 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+
+ {A6674BB3-1B23-4E99-AF9B-1CCDB4EB049A}
+ mod_auth_simple
+
+
+
+ DynamicLibrary
+ true
+ MultiByte
+
+
+ Application
+ false
+ true
+ MultiByte
+
+
+
+
+
+
+
+
+
+
+
+
+ $(SolutionDir)..\src;$(IncludePath)
+ $(SolutionDir)vs2010\$(Configuration);$(LibraryPath)
+
+
+
+ Level3
+ Disabled
+ _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
+
+
+ true
+ $(SolutionDir)\$(Configuration)\uhub_utils.lib;%(AdditionalDependencies)
+
+
+
+
+ Level3
+ MaxSpeed
+ true
+ true
+
+
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/vs2010/uhub.sln b/vs2010/uhub.sln
new file mode 100644
index 0000000..7709818
--- /dev/null
+++ b/vs2010/uhub.sln
@@ -0,0 +1,38 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual C++ Express 2010
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "uhub", "uhub.vcxproj", "{98D8BFE9-DACD-40E1-B7BE-C9079ABF832E}"
+ ProjectSection(ProjectDependencies) = postProject
+ {0A3C1519-D877-47D9-A82E-40AC1BC79D75} = {0A3C1519-D877-47D9-A82E-40AC1BC79D75}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "uhub_utils", "uhub_utils\uhub_utils.vcxproj", "{0A3C1519-D877-47D9-A82E-40AC1BC79D75}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_auth_simple", "plugins\mod_auth_simple\mod_auth_simple.vcxproj", "{A6674BB3-1B23-4E99-AF9B-1CCDB4EB049A}"
+ ProjectSection(ProjectDependencies) = postProject
+ {0A3C1519-D877-47D9-A82E-40AC1BC79D75} = {0A3C1519-D877-47D9-A82E-40AC1BC79D75}
+ EndProjectSection
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Win32 = Debug|Win32
+ Release|Win32 = Release|Win32
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {98D8BFE9-DACD-40E1-B7BE-C9079ABF832E}.Debug|Win32.ActiveCfg = Debug|Win32
+ {98D8BFE9-DACD-40E1-B7BE-C9079ABF832E}.Debug|Win32.Build.0 = Debug|Win32
+ {98D8BFE9-DACD-40E1-B7BE-C9079ABF832E}.Release|Win32.ActiveCfg = Release|Win32
+ {98D8BFE9-DACD-40E1-B7BE-C9079ABF832E}.Release|Win32.Build.0 = Release|Win32
+ {0A3C1519-D877-47D9-A82E-40AC1BC79D75}.Debug|Win32.ActiveCfg = Debug|Win32
+ {0A3C1519-D877-47D9-A82E-40AC1BC79D75}.Debug|Win32.Build.0 = Debug|Win32
+ {0A3C1519-D877-47D9-A82E-40AC1BC79D75}.Release|Win32.ActiveCfg = Release|Win32
+ {0A3C1519-D877-47D9-A82E-40AC1BC79D75}.Release|Win32.Build.0 = Release|Win32
+ {A6674BB3-1B23-4E99-AF9B-1CCDB4EB049A}.Debug|Win32.ActiveCfg = Debug|Win32
+ {A6674BB3-1B23-4E99-AF9B-1CCDB4EB049A}.Debug|Win32.Build.0 = Debug|Win32
+ {A6674BB3-1B23-4E99-AF9B-1CCDB4EB049A}.Release|Win32.ActiveCfg = Release|Win32
+ {A6674BB3-1B23-4E99-AF9B-1CCDB4EB049A}.Release|Win32.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/vs2010/uhub.vcxproj b/vs2010/uhub.vcxproj
new file mode 100644
index 0000000..3b0a471
--- /dev/null
+++ b/vs2010/uhub.vcxproj
@@ -0,0 +1,146 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+
+ {98D8BFE9-DACD-40E1-B7BE-C9079ABF832E}
+ Win32Proj
+ uhub
+
+
+
+ Application
+ true
+ Unicode
+
+
+ Application
+ false
+ true
+ Unicode
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ $(SolutionDir)..\src;$(IncludePath)
+ $(SolutionDir)\$(Configuration);$(LibraryPath)
+
+
+ false
+
+
+
+ NotUsing
+ Level3
+ Disabled
+ WIN32;_DEBUG;_CONSOLE;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
+ $(projectDir)..\src\
+ true
+ false
+ false
+ CompileAsC
+ true
+
+
+ Console
+ true
+ kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies);ws2_32.lib;uhub_utils.lib
+
+
+
+
+ Level3
+ Use
+ MaxSpeed
+ true
+ true
+ WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)
+
+
+ Console
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/vs2010/uhub_utils/uhub_utils.vcxproj b/vs2010/uhub_utils/uhub_utils.vcxproj
new file mode 100644
index 0000000..783934b
--- /dev/null
+++ b/vs2010/uhub_utils/uhub_utils.vcxproj
@@ -0,0 +1,96 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+
+ {0A3C1519-D877-47D9-A82E-40AC1BC79D75}
+ uhub_utils
+
+
+
+ StaticLibrary
+ true
+ MultiByte
+
+
+ Application
+ false
+ true
+ MultiByte
+
+
+
+
+
+
+
+
+
+
+
+
+ $(SolutionDir)..\src;$(IncludePath)
+
+
+
+ Level3
+ Disabled
+
+
+ _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
+
+
+ true
+
+
+
+
+ Level3
+ MaxSpeed
+ true
+ true
+
+
+ true
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file