Skip to content

Commit 81c86a1

Browse files
committedJan 20, 2018
Initial commit
0 parents  commit 81c86a1

14 files changed

+986
-0
lines changed
 

‎.gitignore

+323
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,323 @@
1+
## Ignore Visual Studio temporary files, build results, and
2+
## files generated by popular Visual Studio add-ons.
3+
##
4+
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
5+
6+
# User-specific files
7+
*.suo
8+
*.user
9+
*.userosscache
10+
*.sln.docstates
11+
12+
# User-specific files (MonoDevelop/Xamarin Studio)
13+
*.userprefs
14+
15+
# Build results
16+
[Dd]ebug/
17+
[Dd]ebugPublic/
18+
[Rr]elease/
19+
[Rr]eleases/
20+
x64/
21+
x86/
22+
bld/
23+
[Bb]in/
24+
[Oo]bj/
25+
[Ll]og/
26+
27+
# Visual Studio 2015/2017 cache/options directory
28+
.vs/
29+
# Uncomment if you have tasks that create the project's static files in wwwroot
30+
#wwwroot/
31+
32+
# Visual Studio 2017 auto generated files
33+
Generated\ Files/
34+
35+
# MSTest test Results
36+
[Tt]est[Rr]esult*/
37+
[Bb]uild[Ll]og.*
38+
39+
# NUNIT
40+
*.VisualState.xml
41+
TestResult.xml
42+
43+
# Build Results of an ATL Project
44+
[Dd]ebugPS/
45+
[Rr]eleasePS/
46+
dlldata.c
47+
48+
# Benchmark Results
49+
BenchmarkDotNet.Artifacts/
50+
51+
# .NET Core
52+
project.lock.json
53+
project.fragment.lock.json
54+
artifacts/
55+
**/Properties/launchSettings.json
56+
57+
# StyleCop
58+
StyleCopReport.xml
59+
60+
# Files built by Visual Studio
61+
*_i.c
62+
*_p.c
63+
*_i.h
64+
*.ilk
65+
*.meta
66+
*.obj
67+
*.pch
68+
*.pdb
69+
*.pgc
70+
*.pgd
71+
*.rsp
72+
*.sbr
73+
*.tlb
74+
*.tli
75+
*.tlh
76+
*.tmp
77+
*.tmp_proj
78+
*.log
79+
*.vspscc
80+
*.vssscc
81+
.builds
82+
*.pidb
83+
*.svclog
84+
*.scc
85+
86+
# Chutzpah Test files
87+
_Chutzpah*
88+
89+
# Visual C++ cache files
90+
ipch/
91+
*.aps
92+
*.ncb
93+
*.opendb
94+
*.opensdf
95+
*.sdf
96+
*.cachefile
97+
*.VC.db
98+
*.VC.VC.opendb
99+
100+
# Visual Studio profiler
101+
*.psess
102+
*.vsp
103+
*.vspx
104+
*.sap
105+
106+
# Visual Studio Trace Files
107+
*.e2e
108+
109+
# TFS 2012 Local Workspace
110+
$tf/
111+
112+
# Guidance Automation Toolkit
113+
*.gpState
114+
115+
# ReSharper is a .NET coding add-in
116+
_ReSharper*/
117+
*.[Rr]e[Ss]harper
118+
*.DotSettings.user
119+
120+
# JustCode is a .NET coding add-in
121+
.JustCode
122+
123+
# TeamCity is a build add-in
124+
_TeamCity*
125+
126+
# DotCover is a Code Coverage Tool
127+
*.dotCover
128+
129+
# AxoCover is a Code Coverage Tool
130+
.axoCover/*
131+
!.axoCover/settings.json
132+
133+
# Visual Studio code coverage results
134+
*.coverage
135+
*.coveragexml
136+
137+
# NCrunch
138+
_NCrunch_*
139+
.*crunch*.local.xml
140+
nCrunchTemp_*
141+
142+
# MightyMoose
143+
*.mm.*
144+
AutoTest.Net/
145+
146+
# Web workbench (sass)
147+
.sass-cache/
148+
149+
# Installshield output folder
150+
[Ee]xpress/
151+
152+
# DocProject is a documentation generator add-in
153+
DocProject/buildhelp/
154+
DocProject/Help/*.HxT
155+
DocProject/Help/*.HxC
156+
DocProject/Help/*.hhc
157+
DocProject/Help/*.hhk
158+
DocProject/Help/*.hhp
159+
DocProject/Help/Html2
160+
DocProject/Help/html
161+
162+
# Click-Once directory
163+
publish/
164+
165+
# Publish Web Output
166+
*.[Pp]ublish.xml
167+
*.azurePubxml
168+
# Note: Comment the next line if you want to checkin your web deploy settings,
169+
# but database connection strings (with potential passwords) will be unencrypted
170+
*.pubxml
171+
*.publishproj
172+
173+
# Microsoft Azure Web App publish settings. Comment the next line if you want to
174+
# checkin your Azure Web App publish settings, but sensitive information contained
175+
# in these scripts will be unencrypted
176+
PublishScripts/
177+
178+
# NuGet Packages
179+
*.nupkg
180+
# The packages folder can be ignored because of Package Restore
181+
**/[Pp]ackages/*
182+
# except build/, which is used as an MSBuild target.
183+
!**/[Pp]ackages/build/
184+
# Uncomment if necessary however generally it will be regenerated when needed
185+
#!**/[Pp]ackages/repositories.config
186+
# NuGet v3's project.json files produces more ignorable files
187+
*.nuget.props
188+
*.nuget.targets
189+
190+
# Microsoft Azure Build Output
191+
csx/
192+
*.build.csdef
193+
194+
# Microsoft Azure Emulator
195+
ecf/
196+
rcf/
197+
198+
# Windows Store app package directories and files
199+
AppPackages/
200+
BundleArtifacts/
201+
Package.StoreAssociation.xml
202+
_pkginfo.txt
203+
*.appx
204+
205+
# Visual Studio cache files
206+
# files ending in .cache can be ignored
207+
*.[Cc]ache
208+
# but keep track of directories ending in .cache
209+
!*.[Cc]ache/
210+
211+
# Others
212+
ClientBin/
213+
~$*
214+
*~
215+
*.dbmdl
216+
*.dbproj.schemaview
217+
*.jfm
218+
*.pfx
219+
*.publishsettings
220+
orleans.codegen.cs
221+
222+
# Including strong name files can present a security risk
223+
# (https://github.com/github/gitignore/pull/2483#issue-259490424)
224+
#*.snk
225+
226+
# Since there are multiple workflows, uncomment next line to ignore bower_components
227+
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
228+
#bower_components/
229+
230+
# RIA/Silverlight projects
231+
Generated_Code/
232+
233+
# Backup & report files from converting an old project file
234+
# to a newer Visual Studio version. Backup files are not needed,
235+
# because we have git ;-)
236+
_UpgradeReport_Files/
237+
Backup*/
238+
UpgradeLog*.XML
239+
UpgradeLog*.htm
240+
241+
# SQL Server files
242+
*.mdf
243+
*.ldf
244+
*.ndf
245+
246+
# Business Intelligence projects
247+
*.rdl.data
248+
*.bim.layout
249+
*.bim_*.settings
250+
251+
# Microsoft Fakes
252+
FakesAssemblies/
253+
254+
# GhostDoc plugin setting file
255+
*.GhostDoc.xml
256+
257+
# Node.js Tools for Visual Studio
258+
.ntvs_analysis.dat
259+
node_modules/
260+
261+
# TypeScript v1 declaration files
262+
typings/
263+
264+
# Visual Studio 6 build log
265+
*.plg
266+
267+
# Visual Studio 6 workspace options file
268+
*.opt
269+
270+
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
271+
*.vbw
272+
273+
# Visual Studio LightSwitch build output
274+
**/*.HTMLClient/GeneratedArtifacts
275+
**/*.DesktopClient/GeneratedArtifacts
276+
**/*.DesktopClient/ModelManifest.xml
277+
**/*.Server/GeneratedArtifacts
278+
**/*.Server/ModelManifest.xml
279+
_Pvt_Extensions
280+
281+
# Paket dependency manager
282+
.paket/paket.exe
283+
paket-files/
284+
285+
# FAKE - F# Make
286+
.fake/
287+
288+
# JetBrains Rider
289+
.idea/
290+
*.sln.iml
291+
292+
# CodeRush
293+
.cr/
294+
295+
# Python Tools for Visual Studio (PTVS)
296+
__pycache__/
297+
*.pyc
298+
299+
# Cake - Uncomment if you are using it
300+
# tools/**
301+
# !tools/packages.config
302+
303+
# Tabs Studio
304+
*.tss
305+
306+
# Telerik's JustMock configuration file
307+
*.jmconfig
308+
309+
# BizTalk build output
310+
*.btp.cs
311+
*.btm.cs
312+
*.odx.cs
313+
*.xsd.cs
314+
315+
# OpenCover UI analysis results
316+
OpenCover/
317+
318+
# Azure Stream Analytics local run output
319+
ASALocalRun/
320+
321+
# MSBuild Binary and Structured Log
322+
*.binlog
323+

‎Readme.md

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
#ScreenCast
2+
A small utility to send raw screen data to a network connected display.
3+
4+
## Usage
5+
Start ScreenCast.exe and resize and move the window to cover the desired area of screen to be sent.
6+
7+
The Connect menu will allow you to configure:
8+
- IP address
9+
- UDP Port
10+
- The size of the output image (HxW)
11+
- Framerate to send
12+
13+
Once the cast has begun, the application will resize the monitored area to the specified HxW and generate UDP packets at the specified framerate.
14+
15+
## Output format
16+
Output data is sent via UDP datagram to the specified IP:port as individual RGBA bytes.

‎ScreenCast.cpp

+420
Large diffs are not rendered by default.

‎ScreenCast.h

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
#pragma once
2+
3+
#include "resource.h"

‎ScreenCast.ico

2.93 KB
Binary file not shown.

‎ScreenCast.rc

9.58 KB
Binary file not shown.

‎ScreenCast.sln

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
2+
Microsoft Visual Studio Solution File, Format Version 12.00
3+
# Visual Studio 2013
4+
VisualStudioVersion = 12.0.31101.0
5+
MinimumVisualStudioVersion = 10.0.40219.1
6+
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ScreenCast", "ScreenCast.vcxproj", "{F9C36836-B52F-4E03-9290-A02F6CA5FDBD}"
7+
EndProject
8+
Global
9+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
10+
Debug|Win32 = Debug|Win32
11+
Release|Win32 = Release|Win32
12+
EndGlobalSection
13+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
14+
{F9C36836-B52F-4E03-9290-A02F6CA5FDBD}.Debug|Win32.ActiveCfg = Debug|Win32
15+
{F9C36836-B52F-4E03-9290-A02F6CA5FDBD}.Debug|Win32.Build.0 = Debug|Win32
16+
{F9C36836-B52F-4E03-9290-A02F6CA5FDBD}.Release|Win32.ActiveCfg = Release|Win32
17+
{F9C36836-B52F-4E03-9290-A02F6CA5FDBD}.Release|Win32.Build.0 = Release|Win32
18+
EndGlobalSection
19+
GlobalSection(SolutionProperties) = preSolution
20+
HideSolutionNode = FALSE
21+
EndGlobalSection
22+
EndGlobal

‎ScreenCast.vcxproj

+104
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<ItemGroup Label="ProjectConfigurations">
4+
<ProjectConfiguration Include="Debug|Win32">
5+
<Configuration>Debug</Configuration>
6+
<Platform>Win32</Platform>
7+
</ProjectConfiguration>
8+
<ProjectConfiguration Include="Release|Win32">
9+
<Configuration>Release</Configuration>
10+
<Platform>Win32</Platform>
11+
</ProjectConfiguration>
12+
</ItemGroup>
13+
<PropertyGroup Label="Globals">
14+
<ProjectGuid>{F9C36836-B52F-4E03-9290-A02F6CA5FDBD}</ProjectGuid>
15+
<Keyword>Win32Proj</Keyword>
16+
<RootNamespace>ScreenCast</RootNamespace>
17+
</PropertyGroup>
18+
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
19+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
20+
<ConfigurationType>Application</ConfigurationType>
21+
<UseDebugLibraries>true</UseDebugLibraries>
22+
<PlatformToolset>v120</PlatformToolset>
23+
<CharacterSet>Unicode</CharacterSet>
24+
</PropertyGroup>
25+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
26+
<ConfigurationType>Application</ConfigurationType>
27+
<UseDebugLibraries>false</UseDebugLibraries>
28+
<PlatformToolset>v120</PlatformToolset>
29+
<WholeProgramOptimization>true</WholeProgramOptimization>
30+
<CharacterSet>Unicode</CharacterSet>
31+
</PropertyGroup>
32+
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
33+
<ImportGroup Label="ExtensionSettings">
34+
</ImportGroup>
35+
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
36+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
37+
</ImportGroup>
38+
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
39+
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
40+
</ImportGroup>
41+
<PropertyGroup Label="UserMacros" />
42+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
43+
<LinkIncremental>true</LinkIncremental>
44+
</PropertyGroup>
45+
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
46+
<LinkIncremental>false</LinkIncremental>
47+
</PropertyGroup>
48+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
49+
<ClCompile>
50+
<PrecompiledHeader>Use</PrecompiledHeader>
51+
<WarningLevel>Level3</WarningLevel>
52+
<Optimization>Disabled</Optimization>
53+
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
54+
<SDLCheck>true</SDLCheck>
55+
</ClCompile>
56+
<Link>
57+
<SubSystem>Windows</SubSystem>
58+
<GenerateDebugInformation>true</GenerateDebugInformation>
59+
</Link>
60+
</ItemDefinitionGroup>
61+
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
62+
<ClCompile>
63+
<WarningLevel>Level3</WarningLevel>
64+
<PrecompiledHeader>Use</PrecompiledHeader>
65+
<Optimization>MaxSpeed</Optimization>
66+
<FunctionLevelLinking>true</FunctionLevelLinking>
67+
<IntrinsicFunctions>true</IntrinsicFunctions>
68+
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
69+
<SDLCheck>true</SDLCheck>
70+
</ClCompile>
71+
<Link>
72+
<SubSystem>Windows</SubSystem>
73+
<GenerateDebugInformation>true</GenerateDebugInformation>
74+
<EnableCOMDATFolding>true</EnableCOMDATFolding>
75+
<OptimizeReferences>true</OptimizeReferences>
76+
</Link>
77+
</ItemDefinitionGroup>
78+
<ItemGroup>
79+
<Text Include="ReadMe.txt" />
80+
</ItemGroup>
81+
<ItemGroup>
82+
<ClInclude Include="Resource.h" />
83+
<ClInclude Include="ScreenCast.h" />
84+
<ClInclude Include="stdafx.h" />
85+
<ClInclude Include="targetver.h" />
86+
</ItemGroup>
87+
<ItemGroup>
88+
<ClCompile Include="ScreenCast.cpp" />
89+
<ClCompile Include="stdafx.cpp">
90+
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
91+
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
92+
</ClCompile>
93+
</ItemGroup>
94+
<ItemGroup>
95+
<ResourceCompile Include="ScreenCast.rc" />
96+
</ItemGroup>
97+
<ItemGroup>
98+
<Image Include="ScreenCast.ico" />
99+
<Image Include="small.ico" />
100+
</ItemGroup>
101+
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
102+
<ImportGroup Label="ExtensionTargets">
103+
</ImportGroup>
104+
</Project>

‎ScreenCast.vcxproj.filters

+55
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<ItemGroup>
4+
<Filter Include="Source Files">
5+
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
6+
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
7+
</Filter>
8+
<Filter Include="Header Files">
9+
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
10+
<Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
11+
</Filter>
12+
<Filter Include="Resource Files">
13+
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
14+
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
15+
</Filter>
16+
</ItemGroup>
17+
<ItemGroup>
18+
<Text Include="ReadMe.txt" />
19+
</ItemGroup>
20+
<ItemGroup>
21+
<ClInclude Include="stdafx.h">
22+
<Filter>Header Files</Filter>
23+
</ClInclude>
24+
<ClInclude Include="targetver.h">
25+
<Filter>Header Files</Filter>
26+
</ClInclude>
27+
<ClInclude Include="Resource.h">
28+
<Filter>Header Files</Filter>
29+
</ClInclude>
30+
<ClInclude Include="ScreenCast.h">
31+
<Filter>Header Files</Filter>
32+
</ClInclude>
33+
</ItemGroup>
34+
<ItemGroup>
35+
<ClCompile Include="stdafx.cpp">
36+
<Filter>Source Files</Filter>
37+
</ClCompile>
38+
<ClCompile Include="ScreenCast.cpp">
39+
<Filter>Source Files</Filter>
40+
</ClCompile>
41+
</ItemGroup>
42+
<ItemGroup>
43+
<ResourceCompile Include="ScreenCast.rc">
44+
<Filter>Resource Files</Filter>
45+
</ResourceCompile>
46+
</ItemGroup>
47+
<ItemGroup>
48+
<Image Include="small.ico">
49+
<Filter>Resource Files</Filter>
50+
</Image>
51+
<Image Include="ScreenCast.ico">
52+
<Filter>Resource Files</Filter>
53+
</Image>
54+
</ItemGroup>
55+
</Project>

‎resource.h

2.75 KB
Binary file not shown.

‎small.ico

2.93 KB
Binary file not shown.

‎stdafx.cpp

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
// stdafx.cpp : source file that includes just the standard includes
2+
// ScreenCast.pch will be the pre-compiled header
3+
// stdafx.obj will contain the pre-compiled type information
4+
5+
#include "stdafx.h"
6+
7+
// TODO: reference any additional headers you need in STDAFX.H
8+
// and not in this file

‎stdafx.h

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
// stdafx.h : include file for standard system include files,
2+
// or project specific include files that are used frequently, but
3+
// are changed infrequently
4+
//
5+
6+
#pragma once
7+
8+
#include "targetver.h"
9+
10+
#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
11+
// Windows Header Files:
12+
#include <windows.h>
13+
14+
// C RunTime Header Files
15+
#include <stdlib.h>
16+
#include <malloc.h>
17+
#include <memory.h>
18+
#include <tchar.h>
19+
20+
21+
// additional headers
22+
#include <WinSock2.h>
23+
#include <Ws2tcpip.h>
24+
#include <Strsafe.h>
25+
#include <Commctrl.h>
26+
27+
#pragma comment(lib, "ws2_32.lib")

‎targetver.h

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
#pragma once
2+
3+
// Including SDKDDKVer.h defines the highest available Windows platform.
4+
5+
// If you wish to build your application for a previous Windows platform, include WinSDKVer.h and
6+
// set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h.
7+
8+
#include <SDKDDKVer.h>

0 commit comments

Comments
 (0)
Please sign in to comment.