Browse Source

Update

master
ocsnetworks 3 years ago
commit
4d8ee57445
  1. 577
      CDGNet/CDGFile.vb
  2. 140
      CDGNet/CDGNet.vbproj
  3. 13
      CDGNet/CDGNet.vbproj.user
  4. 54
      CDGNet/CdgFileIoStream.vb
  5. 65
      CDGNet/GraphicUtil.vb
  6. 13
      CDGNet/My Project/Application.Designer.vb
  7. 10
      CDGNet/My Project/Application.myapp
  8. 35
      CDGNet/My Project/AssemblyInfo.vb
  9. 63
      CDGNet/My Project/Resources.Designer.vb
  10. 117
      CDGNet/My Project/Resources.resx
  11. 73
      CDGNet/My Project/Settings.Designer.vb
  12. 7
      CDGNet/My Project/Settings.settings
  13. BIN
      CDGNet/bin/Debug/CDGNet.dll
  14. BIN
      CDGNet/bin/Debug/CDGNet.pdb
  15. 24
      CDGNet/bin/Debug/CDGNet.xml
  16. BIN
      CDGNet/bin/Release/CDGNet.dll
  17. BIN
      CDGNet/bin/Release/CDGNet.pdb
  18. 24
      CDGNet/bin/Release/CDGNet.xml
  19. BIN
      CDGNet/bin/Release/MetroFramework.dll
  20. BIN
      CDGNet/obj/Debug/CDGNet.Resources.resources
  21. BIN
      CDGNet/obj/Debug/CDGNet.dll
  22. BIN
      CDGNet/obj/Debug/CDGNet.pdb
  23. 20
      CDGNet/obj/Debug/CDGNet.vbproj.FileListAbsolute.txt
  24. 24
      CDGNet/obj/Debug/CDGNet.xml
  25. BIN
      CDGNet/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
  26. BIN
      CDGNet/obj/Debug/GenerateResource-ResGen.read.1.tlog
  27. BIN
      CDGNet/obj/Debug/GenerateResource-ResGen.write.1.tlog
  28. BIN
      CDGNet/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll
  29. BIN
      CDGNet/obj/Release/CDGNet.Resources.resources
  30. BIN
      CDGNet/obj/Release/CDGNet.dll
  31. BIN
      CDGNet/obj/Release/CDGNet.pdb
  32. 28
      CDGNet/obj/Release/CDGNet.vbproj.FileListAbsolute.txt
  33. BIN
      CDGNet/obj/Release/CDGNet.vbproj.GenerateResource.Cache
  34. 24
      CDGNet/obj/Release/CDGNet.xml
  35. BIN
      CDGNet/obj/Release/DesignTimeResolveAssemblyReferences.cache
  36. BIN
      CDGNet/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache
  37. BIN
      CDGNet/obj/Release/GenerateResource-ResGen.read.1.tlog
  38. BIN
      CDGNet/obj/Release/GenerateResource-ResGen.write.1.tlog
  39. BIN
      CDGNet/obj/Release/TempPE/My Project.Resources.Designer.vb.dll
  40. 59
      CDGWindow.Designer.vb
  41. 143
      CDGWindow.resx
  42. 39
      CDGWindow.vb
  43. 36
      CURFile.vb
  44. 54
      CurFileStream.vb
  45. 313
      Form1.Designer.vb
  46. 217
      Form1.resx
  47. 421
      Form1.vb
  48. 74
      Import.Designer.vb
  49. 123
      Import.resx
  50. 35
      Import.vb
  51. 79
      LoadingForm.Designer.vb
  52. 120
      LoadingForm.resx
  53. 12
      LoadingForm.vb
  54. BIN
      MP3G Player Installer/Debug/MP3G PLayer Installer.msi
  55. BIN
      MP3G Player Installer/Debug/setup.exe
  56. 1055
      MP3G Player Installer/MP3G PLayer Installer.vdproj
  57. BIN
      MP3G Player Installer/Release/MP3G Player Installer.msi
  58. BIN
      MP3G Player Installer/Release/setup.exe
  59. 34
      MP3GPlayer.sln
  60. BIN
      MP3GPlayer.suo
  61. 220
      MP3GPlayer.vbproj
  62. 13
      MP3GPlayer.vbproj.user
  63. 38
      My Project/Application.Designer.vb
  64. 10
      My Project/Application.myapp
  65. 35
      My Project/AssemblyInfo.vb
  66. 63
      My Project/Resources.Designer.vb
  67. 117
      My Project/Resources.resx
  68. 73
      My Project/Settings.Designer.vb
  69. 7
      My Project/Settings.settings
  70. 62
      PreviewWindow.Designer.vb
  71. 143
      PreviewWindow.resx
  72. 30
      PreviewWindow.vb
  73. 18
      Unzip.vb
  74. 20
      UpgradeLog.XML
  75. BIN
      bin/Release/Bass.Net.dll
  76. BIN
      bin/Release/CDGNet.dll
  77. BIN
      bin/Release/CDGNet.pdb
  78. 24
      bin/Release/CDGNet.xml
  79. BIN
      bin/Release/ICSharpCode.SharpZipLib.dll
  80. BIN
      bin/Release/MP3GPlayer.exe
  81. BIN
      bin/Release/MP3GPlayer.pdb
  82. BIN
      bin/Release/MP3GPlayer.vshost.exe
  83. 11
      bin/Release/MP3GPlayer.vshost.exe.manifest
  84. 24
      bin/Release/MP3GPlayer.xml
  85. BIN
      bin/Release/MetroFramework.dll
  86. BIN
      bin/Release/System.Data.SQLite.DLL
  87. BIN
      bin/Release/bass.dll
  88. BIN
      bin/Release/bass_fx.dll
  89. BIN
      bin/Release/karaoke.db
  90. BIN
      karaoke.ico
  91. BIN
      lib/Bass.Net.dll
  92. BIN
      lib/ICSharpCode.SharpZipLib.dll
  93. BIN
      lib/Metro/MetroFramework.Design.dll
  94. BIN
      lib/Metro/MetroFramework.Fonts.dll
  95. BIN
      lib/Metro/MetroFramework.dll
  96. BIN
      lib/System.Data.SQLite.DLL
  97. BIN
      lib/bass.dll
  98. BIN
      lib/bass_fx.dll
  99. BIN
      obj/Debug/DesignTimeResolveAssemblyReferences.cache
  100. BIN
      obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
  101. Some files were not shown because too many files have changed in this diff Show More

577
CDGNet/CDGFile.vb

@ -0,0 +1,577 @@ @@ -0,0 +1,577 @@
Imports System.IO
Imports System.Drawing
Public Class CDGFile
Implements IDisposable
#Region "Constants"
'CDG Command Code
Const CDG_COMMAND As Byte = &H9
'CDG Instruction Codes
Const CDG_INST_MEMORY_PRESET As Integer = 1
Const CDG_INST_BORDER_PRESET As Integer = 2
Const CDG_INST_TILE_BLOCK As Integer = 6
Const CDG_INST_SCROLL_PRESET As Integer = 20
Const CDG_INST_SCROLL_COPY As Integer = 24
Const CDG_INST_DEF_TRANSP_COL As Integer = 28
Const CDG_INST_LOAD_COL_TBL_LO As Integer = 30
Const CDG_INST_LOAD_COL_TBL_HIGH As Integer = 31
Const CDG_INST_TILE_BLOCK_XOR As Integer = 38
'Bitmask for all CDG fields
Const CDG_MASK As Byte = &H3F
Const CDG_PACKET_SIZE As Integer = 24
Const TILE_HEIGHT As Integer = 12
Const TILE_WIDTH As Integer = 6
'This is the size of the display as defined by the CDG specification.
'The pixels in this region can be painted, and scrolling operations
'rotate through this number of pixels.
Public Const CDG_FULL_WIDTH As Integer = 300
Public Const CDG_FULL_HEIGHT As Integer = 216
'This is the size of the screen that is actually intended to be
'visible. It is the center area of CDG_FULL.
Const CDG_DISPLAY_WIDTH As Integer = 294
Const CDG_DISPLAY_HEIGHT As Integer = 204
Const COLOUR_TABLE_SIZE As Integer = 16
#End Region
#Region "Private Declarations"
Private m_pixelColours(CDG_FULL_HEIGHT - 1, CDG_FULL_WIDTH - 1) As Byte
Private m_colourTable(COLOUR_TABLE_SIZE - 1) As Integer
Private m_presetColourIndex As Integer
Private m_borderColourIndex As Integer
Private m_transparentColour As Integer
Private m_hOffset As Integer
Private m_vOffset As Integer
Private m_pStream As CdgFileIoStream
Private m_pSurface As ISurface
Private m_positionMs As Long
Private m_duration As Long
Private mImage As Bitmap
#End Region
#Region "Properties"
Public ReadOnly Property RGBImage(Optional ByVal makeTransparent As Boolean = False) As System.Drawing.Image
Get
Dim temp As New MemoryStream
Try
Dim i As Integer = 0
For ri = 0 To CDG_FULL_HEIGHT - 1
For ci = 0 To CDG_FULL_WIDTH - 1
Dim ARGBInt As Integer = m_pSurface.rgbData(ri, ci)
Dim myByte(3) As Byte
myByte = BitConverter.GetBytes(ARGBInt)
temp.Write(myByte, 0, 4)
Next
Next
Catch ex As Exception
'Do nothing (empty bitmap will be returned)
End Try
Dim myBitmap As Bitmap = GraphicUtil.StreamToBitmap(temp, CDG_FULL_WIDTH, CDG_FULL_HEIGHT)
If makeTransparent Then
myBitmap.MakeTransparent(myBitmap.GetPixel(1, 1))
End If
Return myBitmap
End Get
End Property
#End Region
#Region "Public Methods"
'Png Export
Public Sub SavePng(ByVal filename As String)
RGBImage.Save(filename, System.Drawing.Imaging.ImageFormat.Png)
End Sub
'New
Public Sub New(ByVal cdgFileName As String)
m_pStream = New CdgFileIoStream
m_pStream.open(cdgFileName)
m_pSurface = New ISurface
If m_pStream IsNot Nothing AndAlso m_pSurface IsNot Nothing Then
Me.reset()
m_duration = ((m_pStream.getsize() / CDG_PACKET_SIZE) * 1000) / 300
End If
End Sub
Public Function getTotalDuration() As Long
Return m_duration
End Function
Public Function renderAtPosition(ByVal ms As Long) As Boolean
Dim pack As New CdgPacket
Dim numPacks As Long = 0
Dim res As Boolean = True
If (m_pStream Is Nothing) Then
Return False
End If
If (ms < m_positionMs) Then
If (m_pStream.seek(0, SeekOrigin.Begin) < 0) Then Return False
m_positionMs = 0
End If
'duration of one packet is 1/300 seconds (4 packets per sector, 75 sectors per second)
numPacks = ms - m_positionMs
numPacks /= 10
m_positionMs += numPacks * 10
numPacks *= 3
'TODO: double check logic due to inline while loop fucntionality
While numPacks > 0 'AndAlso m_pSurface.rgbData Is Nothing
res = readPacket(pack)
processPacket(pack)
numPacks -= 1
End While
render()
Return res
End Function
#End Region
#Region "Private Methods"
Private Sub reset()
Array.Clear(m_pixelColours, 0, m_pixelColours.LongLength)
Array.Clear(m_colourTable, 0, m_colourTable.LongLength)
m_presetColourIndex = 0
m_borderColourIndex = 0
m_transparentColour = 0
m_hOffset = 0
m_vOffset = 0
m_duration = 0
m_positionMs = 0
'clear surface
If (m_pSurface.rgbData IsNot Nothing) Then
Array.Clear(m_pSurface.rgbData, 0, m_pSurface.rgbData.LongLength)
End If
End Sub
Private Function readPacket(ByRef pack As CdgPacket) As Boolean
If m_pStream Is Nothing Or m_pStream.eof() Then
Return False
End If
Dim read As Integer = 0
read += m_pStream.read(pack.command, 1)
read += m_pStream.read(pack.instruction, 1)
read += m_pStream.read(pack.parityQ, 2)
read += m_pStream.read(pack.data, 16)
read += m_pStream.read(pack.parityP, 4)
Return (read = 24)
End Function
Private Sub processPacket(ByRef pack As CdgPacket)
Dim inst_code As Integer
If ((pack.command(0) And CDG_MASK) = CDG_COMMAND) Then
inst_code = (pack.instruction(0) And CDG_MASK)
Select Case inst_code
Case CDG_INST_MEMORY_PRESET
memoryPreset(pack)
Exit Sub
Case CDG_INST_BORDER_PRESET
borderPreset(pack)
Exit Sub
Case CDG_INST_TILE_BLOCK
tileBlock(pack, False)
Exit Sub
Case CDG_INST_SCROLL_PRESET
scroll(pack, False)
Exit Sub
Case CDG_INST_SCROLL_COPY
scroll(pack, True)
Exit Sub
Case CDG_INST_DEF_TRANSP_COL
defineTransparentColour(pack)
Exit Sub
Case CDG_INST_LOAD_COL_TBL_LO
loadColorTable(pack, 0)
Exit Sub
Case CDG_INST_LOAD_COL_TBL_HIGH
loadColorTable(pack, 1)
Exit Sub
Case CDG_INST_TILE_BLOCK_XOR
tileBlock(pack, True)
Exit Sub
Case Else
'Ignore the unsupported commands
Exit Sub
End Select
End If
End Sub
Private Sub memoryPreset(ByRef pack As CdgPacket)
Dim colour As Integer
Dim ri As Integer
Dim ci As Integer
Dim repeat As Integer
colour = pack.data(0) And &HF
repeat = pack.data(1) And &HF
'Our new interpretation of CD+G Revealed is that memory preset
'commands should also change the border
m_presetColourIndex = colour
m_borderColourIndex = colour
'we have a reliable data stream, so the repeat command
'is executed only the first time
If (repeat = 0) Then
'Note that this may be done before any load colour table
'commands by some CDGs. So the load colour table itself
'actual recalculates the RGB values for all pixels when
'the colour table changes.
'Set the preset colour for every pixel. Must be stored in
'the pixel colour table indeces array
For ri = 0 To CDG_FULL_HEIGHT - 1
For ci = 0 To CDG_FULL_WIDTH - 1
m_pixelColours(ri, ci) = colour
Next
Next
End If
End Sub
Private Sub borderPreset(ByRef pack As CdgPacket)
Dim colour As Integer
Dim ri As Integer
Dim ci As Integer
colour = pack.data(0) And &HF
m_borderColourIndex = colour
'The border area is the area contained with a rectangle
'defined by (0,0,300,216) minus the interior pixels which are contained
'within a rectangle defined by (6,12,294,204).
For ri = 0 To CDG_FULL_HEIGHT - 1
For ci = 0 To 5
m_pixelColours(ri, ci) = colour
Next
For ci = CDG_FULL_WIDTH - 6 To CDG_FULL_WIDTH - 1
m_pixelColours(ri, ci) = colour
Next
Next
For ci = 6 To CDG_FULL_WIDTH - 7
For ri = 0 To 11
m_pixelColours(ri, ci) = colour
Next
For ri = CDG_FULL_HEIGHT - 12 To CDG_FULL_HEIGHT - 1
m_pixelColours(ri, ci) = colour
Next
Next
End Sub
Private Sub loadColorTable(ByRef pack As CdgPacket, ByVal table As Integer)
For i As Integer = 0 To 7
'[---high byte---] [---low byte----]
'7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
'X X r r r r g g X X g g b b b b
Dim byte0 As Byte = pack.data(2 * i)
Dim byte1 As Byte = pack.data(2 * i + 1)
Dim red As Integer = (byte0 And &H3F) >> 2
Dim green As Integer = ((byte0 And &H3) << 2) Or ((byte1 And &H3F) >> 4)
Dim blue As Integer = byte1 And &HF
red *= 17
green *= 17
blue *= 17
If m_pSurface IsNot Nothing Then
m_colourTable(i + table * 8) = m_pSurface.MapRGBColour(red, green, blue)
End If
Next
End Sub
Private Sub tileBlock(ByRef pack As CdgPacket, ByVal bXor As Boolean)
Dim colour0 As Integer
Dim colour1 As Integer
Dim column_index As Integer
Dim row_index As Integer
Dim myByte As Integer
Dim pixel As Integer
Dim xor_col As Integer
Dim currentColourIndex As Integer
Dim new_col As Integer
colour0 = pack.data(0) And &HF
colour1 = pack.data(1) And &HF
row_index = ((pack.data(2) And &H1F) * 12)
column_index = ((pack.data(3) And &H3F) * 6)
If (row_index > (CDG_FULL_HEIGHT - TILE_HEIGHT)) Then Exit Sub
If (column_index > (CDG_FULL_WIDTH - TILE_WIDTH)) Then Exit Sub
'Set the pixel array for each of the pixels in the 12x6 tile.
'Normal = Set the colour to either colour0 or colour1 depending
'on whether the pixel value is 0 or 1.
'XOR = XOR the colour with the colour index currently there.
For i As Integer = 0 To 11
myByte = (pack.data(4 + i) And &H3F)
For j As Integer = 0 To 5
pixel = (myByte >> (5 - j)) And &H1
If (bXor) Then
'Tile Block XOR
If (pixel = 0) Then
xor_col = colour0
Else
xor_col = colour1
End If
'Get the colour index currently at this location, and xor with it
currentColourIndex = m_pixelColours(row_index + i, column_index + j)
new_col = currentColourIndex Xor xor_col
Else
If (pixel = 0) Then
new_col = colour0
Else
new_col = colour1
End If
End If
'Set the pixel with the new colour. We set both the surfarray
'containing actual RGB values, as well as our array containing
'the colour indexes into our colour table.
m_pixelColours(row_index + i, column_index + j) = new_col
Next
Next
End Sub
Private Sub defineTransparentColour(ByRef pack As CdgPacket)
m_transparentColour = pack.data(0) And &HF
End Sub
Private Sub scroll(ByRef pack As CdgPacket, ByVal copy As Boolean)
Dim colour As Integer
Dim hScroll As Integer
Dim vScroll As Integer
Dim hSCmd As Integer
Dim hOffset As Integer
Dim vSCmd As Integer
Dim vOffset As Integer
Dim vScrollPixels As Integer
Dim hScrollPixels As Integer
'Decode the scroll command parameters
colour = pack.data(0) And &HF
hScroll = pack.data(1) And &H3F
vScroll = pack.data(2) And &H3F
hSCmd = (hScroll And &H30) >> 4
hOffset = (hScroll And &H7)
vSCmd = (vScroll And &H30) >> 4
vOffset = (vScroll And &HF)
m_hOffset = If(hOffset < 5, hOffset, 5)
m_vOffset = If(vOffset < 11, vOffset, 11)
'Scroll Vertical - Calculate number of pixels
vScrollPixels = 0
If (vSCmd = 2) Then
vScrollPixels = -12
ElseIf (vSCmd = 1) Then
vScrollPixels = 12
End If
'Scroll Horizontal- Calculate number of pixels
hScrollPixels = 0
If (hSCmd = 2) Then
hScrollPixels = -6
ElseIf (hSCmd = 1) Then
hScrollPixels = 6
End If
If (hScrollPixels = 0 AndAlso vScrollPixels = 0) Then
Exit Sub
End If
'Perform the actual scroll.
Dim temp(CDG_FULL_HEIGHT, CDG_FULL_WIDTH) As Byte
Dim vInc As Integer = vScrollPixels + CDG_FULL_HEIGHT
Dim hInc As Integer = hScrollPixels + CDG_FULL_WIDTH
Dim ri As Integer 'row index
Dim ci As Integer 'column index
For ri = 0 To CDG_FULL_HEIGHT - 1
For ci = 0 To CDG_FULL_WIDTH - 1
temp((ri + vInc) Mod CDG_FULL_HEIGHT, (ci + hInc) Mod CDG_FULL_WIDTH) = m_pixelColours(ri, ci)
Next
Next
'if copy is false, we were supposed to fill in the new pixels
'with a new colour. Go back and do that now.
If (copy = False) Then
If (vScrollPixels > 0) Then
For ci = 0 To CDG_FULL_WIDTH - 1
For ri = 0 To vScrollPixels - 1
temp(ri, ci) = colour
Next
Next
ElseIf (vScrollPixels < 0) Then
For ci = 0 To CDG_FULL_WIDTH - 1
For ri = CDG_FULL_HEIGHT + vScrollPixels To CDG_FULL_HEIGHT - 1
temp(ri, ci) = colour
Next
Next
End If
If (hScrollPixels > 0) Then
For ci = 0 To hScrollPixels - 1
For ri = 0 To CDG_FULL_HEIGHT - 1
temp(ri, ci) = colour
Next
Next
ElseIf (hScrollPixels < 0) Then
For ci = CDG_FULL_WIDTH + hScrollPixels To CDG_FULL_WIDTH - 1
For ri = 0 To CDG_FULL_HEIGHT - 1
temp(ri, ci) = colour
Next
Next
End If
End If
'Now copy the temporary buffer back to our array
For ri = 0 To CDG_FULL_HEIGHT - 1
For ci = 0 To CDG_FULL_WIDTH - 1
m_pixelColours(ri, ci) = temp(ri, ci)
Next
Next
End Sub
Private Sub render()
If (m_pSurface Is Nothing) Then Exit Sub
For ri As Integer = 0 To CDG_FULL_HEIGHT - 1
For ci As Integer = 0 To CDG_FULL_WIDTH - 1
If (ri < TILE_HEIGHT OrElse ri >= CDG_FULL_HEIGHT - TILE_HEIGHT _
OrElse ci < TILE_WIDTH OrElse ci >= CDG_FULL_WIDTH - TILE_WIDTH) Then
m_pSurface.rgbData(ri, ci) = m_colourTable(m_borderColourIndex)
Else
m_pSurface.rgbData(ri, ci) = m_colourTable(m_pixelColours(ri + m_vOffset, ci + m_hOffset))
End If
Next
Next
End Sub
#End Region
Private disposedValue As Boolean = False ' To detect redundant calls
' IDisposable
Protected Overridable Sub Dispose(ByVal disposing As Boolean)
If Not Me.disposedValue Then
If disposing Then
m_pStream.close()
End If
m_pStream = Nothing
m_pSurface = Nothing
End If
Me.disposedValue = True
End Sub
#Region " IDisposable Support "
' This code added by Visual Basic to correctly implement the disposable pattern.
Public Sub Dispose() Implements IDisposable.Dispose
' Do not change this code. Put cleanup code in Dispose(ByVal disposing As Boolean) above.
Dispose(True)
GC.SuppressFinalize(Me)
End Sub
#End Region
End Class
Public Class CdgPacket
Public command(0) As Byte
Public instruction(0) As Byte
Public parityQ(1) As Byte
Public data(15) As Byte
Public parityP(3) As Byte
End Class
Public Class ISurface
Public rgbData(CDGFile.CDG_FULL_HEIGHT - 1, CDGFile.CDG_FULL_WIDTH - 1) As Long
Public Function MapRGBColour(ByVal red As Integer, ByVal green As Integer, ByVal blue As Integer) As Integer
Return Color.FromArgb(red, green, blue).ToArgb
End Function
End Class

140
CDGNet/CDGNet.vbproj

@ -0,0 +1,140 @@ @@ -0,0 +1,140 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>9.0.21022</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{1A466A65-6F1D-465B-A7CB-79B69F76F2D0}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>CDGNet</RootNamespace>
<AssemblyName>CDGNet</AssemblyName>
<FileAlignment>512</FileAlignment>
<MyType>Windows</MyType>
<TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
<OptionExplicit>On</OptionExplicit>
<OptionCompare>Binary</OptionCompare>
<OptionStrict>Off</OptionStrict>
<OptionInfer>On</OptionInfer>
<FileUpgradeFlags>
</FileUpgradeFlags>
<OldToolsVersion>3.5</OldToolsVersion>
<UpgradeBackupLocation />
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<OutputPath>bin\Debug\</OutputPath>
<DocumentationFile>CDGNet.xml</DocumentationFile>
<NoWarn>41999,42016,42017,42018,42019,42020,42021,42022,42032,42036,42353,42354,42355</NoWarn>
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<DefineDebug>false</DefineDebug>
<DefineTrace>true</DefineTrace>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DocumentationFile>CDGNet.xml</DocumentationFile>
<NoWarn>41999,42016,42017,42018,42019,42020,42021,42022,42032,42036,42353,42354,42355</NoWarn>
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
</PropertyGroup>
<ItemGroup>
<Reference Include="MetroFramework">
<HintPath>..\lib\Metro\MetroFramework.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Drawing" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Import Include="Microsoft.VisualBasic" />
<Import Include="System" />
<Import Include="System.Collections" />
<Import Include="System.Collections.Generic" />
<Import Include="System.Data" />
<Import Include="System.Diagnostics" />
</ItemGroup>
<ItemGroup>
<Compile Include="CDGFile.vb" />
<Compile Include="CdgFileIoStream.vb" />
<Compile Include="GraphicUtil.vb" />
<Compile Include="My Project\AssemblyInfo.vb" />
<Compile Include="My Project\Application.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Application.myapp</DependentUpon>
</Compile>
<Compile Include="My Project\Resources.Designer.vb">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="My Project\Settings.Designer.vb">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<EmbeddedResource Include="My Project\Resources.resx">
<Generator>VbMyResourcesResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<None Include="My Project\Application.myapp">
<Generator>MyApplicationCodeGenerator</Generator>
<LastGenOutput>Application.Designer.vb</LastGenOutput>
</None>
<None Include="My Project\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<CustomToolNamespace>My</CustomToolNamespace>
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
</None>
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>true</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
<Visible>False</Visible>
<ProductName>Windows Installer 3.1</ProductName>
<Install>true</Install>
</BootstrapperPackage>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

13
CDGNet/CDGNet.vbproj.user

@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<PublishUrlHistory />
<InstallUrlHistory />
<SupportUrlHistory />
<UpdateUrlHistory />
<BootstrapperUrlHistory />
<ErrorReportUrlHistory />
<FallbackCulture>en-US</FallbackCulture>
<VerifyUploadedFiles>false</VerifyUploadedFiles>
</PropertyGroup>
</Project>

54
CDGNet/CdgFileIoStream.vb

@ -0,0 +1,54 @@ @@ -0,0 +1,54 @@
Imports System.IO
Public Class CdgFileIoStream
#Region "Declarations"
Private m_file As Stream
#End Region
#Region "Public Methods"
Public Sub New()
m_file = Nothing
End Sub
Public Function read(ByRef buf As Byte(), ByVal buf_size As Integer) As Integer
Return m_file.Read(buf, 0, buf_size)
End Function
Public Function write(ByRef buf As Byte(), ByVal buf_size As Integer) As Integer
m_file.Write(buf, 0, buf_size)
Return 1
End Function
Public Function seek(ByVal offset As Integer, ByVal whence As SeekOrigin) As Integer
Return m_file.Seek(offset, whence)
End Function
Public Function eof() As Integer
If (m_file.Position >= m_file.Length) Then
Return 1
Else
Return 0
End If
End Function
Public Function getsize() As Integer
Return m_file.Length
End Function
Public Function open(ByVal filename As String) As Boolean
close()
m_file = New FileStream(filename, FileMode.Open)
Return (m_file IsNot Nothing)
End Function
Public Sub close()
If (m_file IsNot Nothing) Then
m_file.Close()
m_file = Nothing
End If
End Sub
#End Region
End Class

65
CDGNet/GraphicUtil.vb

@ -0,0 +1,65 @@ @@ -0,0 +1,65 @@
Imports System.IO
Imports System.Drawing.Imaging
Imports System.Runtime.InteropServices
Imports System.Drawing
Public Class GraphicUtil
'copy a stream of pixels
Public Shared Function BitmapToStream(ByVal filename As String) As Stream
Dim oldBmp As Bitmap = DirectCast(Image.FromFile(filename), Bitmap)
Dim width As Integer = oldBmp.Width, height As Integer = oldBmp.Width
Dim oldData As BitmapData = oldBmp.LockBits(New Rectangle(0, 0, oldBmp.Width, oldBmp.Height), ImageLockMode.[WriteOnly], PixelFormat.Format24bppRgb)
Dim length As Integer = oldData.Stride * oldBmp.Height
Dim stream As Byte() = New Byte(length - 1) {}
Marshal.Copy(oldData.Scan0, stream, 0, length)
oldBmp.UnlockBits(oldData)
oldBmp.Dispose()
Return New MemoryStream(stream)
End Function
Public Shared Function StreamToBitmap(ByRef stream As Stream, ByVal width As Integer, ByVal height As Integer) As Bitmap
'create a new bitmap
Dim bmp As New Bitmap(width, height, PixelFormat.Format32bppArgb)
Dim bmpData As BitmapData = bmp.LockBits(New Rectangle(0, 0, width, height), ImageLockMode.[WriteOnly], bmp.PixelFormat)
stream.Seek(0, SeekOrigin.Begin)
'copy the stream of pixel
For n As Integer = 0 To stream.Length - 1
Dim myByte(0) As Byte
stream.Read(myByte, 0, 1)
Marshal.WriteByte(bmpData.Scan0, n, myByte(0))
Next
bmp.UnlockBits(bmpData)
Return bmp
End Function
Public Shared Function GetCDGSizeBitmap(ByVal filename As String) As Bitmap
Dim bm As New Bitmap(filename)
Return ResizeBitmap(bm, CDGFile.CDG_FULL_WIDTH, CDGFile.CDG_FULL_HEIGHT)
End Function
Public Shared Function ResizeBitmap(ByRef bm As Bitmap, ByVal width As Integer, ByVal height As Integer) As Bitmap
Dim thumb As New Bitmap(width, height)
Dim g As Graphics = Graphics.FromImage(thumb)
g.InterpolationMode = Drawing2D.InterpolationMode.HighQualityBicubic
g.DrawImage(bm, New Rectangle(0, 0, width, height), New Rectangle(0, 0, bm.Width, _
bm.Height), GraphicsUnit.Pixel)
g.Dispose()
bm.Dispose()
Return thumb
End Function
Public Shared Function MergeImagesWithTransparency(ByVal Pic1 As Bitmap, ByVal pic2 As Bitmap) As Bitmap
Dim MergedImage As Image
Dim bm As New Bitmap(Pic1.Width, Pic1.Height)
Dim gr As Graphics = Graphics.FromImage(bm)
gr.DrawImage(Pic1, 0, 0)
pic2.MakeTransparent(pic2.GetPixel(1, 1))
gr.DrawImage(pic2, 0, 0)
MergedImage = bm
gr.Dispose()
Return MergedImage
End Function
End Class

13
CDGNet/My Project/Application.Designer.vb generated

@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
'------------------------------------------------------------------------------
' <auto-generated>
' This code was generated by a tool.
' Runtime Version:4.0.30319.1026
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On

10
CDGNet/My Project/Application.myapp

@ -0,0 +1,10 @@ @@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<MyApplicationData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<MySubMain>false</MySubMain>
<SingleInstance>false</SingleInstance>
<ShutdownMode>0</ShutdownMode>
<EnableVisualStyles>true</EnableVisualStyles>
<AuthenticationMode>0</AuthenticationMode>
<ApplicationType>1</ApplicationType>
<SaveMySettingsOnExit>true</SaveMySettingsOnExit>
</MyApplicationData>

35
CDGNet/My Project/AssemblyInfo.vb

@ -0,0 +1,35 @@ @@ -0,0 +1,35 @@
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices
' General Information about an assembly is controlled through the following
' set of attributes. Change these attribute values to modify the information
' associated with an assembly.
' Review the values of the assembly attributes
<Assembly: AssemblyTitle("CDGNet")>
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("")>
<Assembly: AssemblyProduct("CDGNet")>
<Assembly: AssemblyCopyright("Copyright © 2010")>
<Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(False)>
'The following GUID is for the ID of the typelib if this project is exposed to COM
<Assembly: Guid("3ac6d65c-eadd-4387-95b7-56d5b902adfb")>
' Version information for an assembly consists of the following four values:
'
' Major Version
' Minor Version
' Build Number
' Revision
'
' You can specify all the values or you can default the Build and Revision Numbers
' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("1.0.0.0")>
<Assembly: AssemblyFileVersion("1.0.0.0")>

63
CDGNet/My Project/Resources.Designer.vb generated

@ -0,0 +1,63 @@ @@ -0,0 +1,63 @@
'------------------------------------------------------------------------------
' <auto-generated>
' This code was generated by a tool.
' Runtime Version:4.0.30319.1026
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Imports System
Namespace My.Resources
'This class was auto-generated by the StronglyTypedResourceBuilder
'class via a tool like ResGen or Visual Studio.
'To add or remove a member, edit your .ResX file then rerun ResGen
'with the /str option, or rebuild your VS project.
'''<summary>
''' A strongly-typed resource class, for looking up localized strings, etc.
'''</summary>
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0"), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _
Friend Module Resources
Private resourceMan As Global.System.Resources.ResourceManager
Private resourceCulture As Global.System.Globalization.CultureInfo
'''<summary>
''' Returns the cached ResourceManager instance used by this class.
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
Get
If Object.ReferenceEquals(resourceMan, Nothing) Then
Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("CDGNet.Resources", GetType(Resources).Assembly)
resourceMan = temp
End If
Return resourceMan
End Get
End Property
'''<summary>
''' Overrides the current thread's CurrentUICulture property for all
''' resource lookups using this strongly typed resource class.
'''</summary>
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Friend Property Culture() As Global.System.Globalization.CultureInfo
Get
Return resourceCulture
End Get
Set
resourceCulture = value
End Set
End Property
End Module
End Namespace

117
CDGNet/My Project/Resources.resx

@ -0,0 +1,117 @@ @@ -0,0 +1,117 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
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
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

73
CDGNet/My Project/Settings.Designer.vb generated

@ -0,0 +1,73 @@ @@ -0,0 +1,73 @@
'------------------------------------------------------------------------------
' <auto-generated>
' This code was generated by a tool.
' Runtime Version:4.0.30319.1026
'
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict On
Option Explicit On
Namespace My
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0"), _
Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Partial Friend NotInheritable Class MySettings
Inherits Global.System.Configuration.ApplicationSettingsBase
Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings)
#Region "My.Settings Auto-Save Functionality"
#If _MyType = "WindowsForms" Then
Private Shared addedHandler As Boolean
Private Shared addedHandlerLockObject As New Object
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
If My.Application.SaveMySettingsOnExit Then
My.Settings.Save()
End If
End Sub
#End If
#End Region
Public Shared ReadOnly Property [Default]() As MySettings
Get
#If _MyType = "WindowsForms" Then
If Not addedHandler Then
SyncLock addedHandlerLockObject
If Not addedHandler Then
AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
addedHandler = True
End If
End SyncLock
End If
#End If
Return defaultInstance
End Get
End Property
End Class
End Namespace
Namespace My
<Global.Microsoft.VisualBasic.HideModuleNameAttribute(), _
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
Friend Module MySettingsProperty
<Global.System.ComponentModel.Design.HelpKeywordAttribute("My.Settings")> _
Friend ReadOnly Property Settings() As Global.CDGNet.My.MySettings
Get
Return Global.CDGNet.My.MySettings.Default
End Get
End Property
End Module
End Namespace

7
CDGNet/My Project/Settings.settings

@ -0,0 +1,7 @@ @@ -0,0 +1,7 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" UseMySettingsClassName="true">
<Profiles>
<Profile Name="(Default)" />
</Profiles>
<Settings />
</SettingsFile>

BIN
CDGNet/bin/Debug/CDGNet.dll

Binary file not shown.

BIN
CDGNet/bin/Debug/CDGNet.pdb

Binary file not shown.

24
CDGNet/bin/Debug/CDGNet.xml

@ -0,0 +1,24 @@ @@ -0,0 +1,24 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>
CDGNet
</name>
</assembly>
<members>
<member name="P:CDGNet.My.Resources.Resources.ResourceManager">
<summary>
Returns the cached ResourceManager instance used by this class.
</summary>
</member><member name="P:CDGNet.My.Resources.Resources.Culture">
<summary>
Overrides the current thread's CurrentUICulture property for all
resource lookups using this strongly typed resource class.
</summary>
</member><member name="T:CDGNet.My.Resources.Resources">
<summary>
A strongly-typed resource class, for looking up localized strings, etc.
</summary>
</member>
</members>
</doc>

BIN
CDGNet/bin/Release/CDGNet.dll

Binary file not shown.

BIN
CDGNet/bin/Release/CDGNet.pdb

Binary file not shown.

24
CDGNet/bin/Release/CDGNet.xml

@ -0,0 +1,24 @@ @@ -0,0 +1,24 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>
CDGNet
</name>
</assembly>
<members>
<member name="P:CDGNet.My.Resources.Resources.ResourceManager">
<summary>
Returns the cached ResourceManager instance used by this class.
</summary>
</member><member name="P:CDGNet.My.Resources.Resources.Culture">
<summary>
Overrides the current thread's CurrentUICulture property for all
resource lookups using this strongly typed resource class.
</summary>
</member><member name="T:CDGNet.My.Resources.Resources">
<summary>
A strongly-typed resource class, for looking up localized strings, etc.
</summary>
</member>
</members>
</doc>

BIN
CDGNet/bin/Release/MetroFramework.dll

Binary file not shown.

BIN
CDGNet/obj/Debug/CDGNet.Resources.resources

Binary file not shown.

BIN
CDGNet/obj/Debug/CDGNet.dll

Binary file not shown.

BIN
CDGNet/obj/Debug/CDGNet.pdb

Binary file not shown.

20
CDGNet/obj/Debug/CDGNet.vbproj.FileListAbsolute.txt

@ -0,0 +1,20 @@ @@ -0,0 +1,20 @@
C:\Users\Administrator\Downloads\karaokeplayerdotnet\karaokeplayerdotnet\CDGNet\bin\Debug\CDGNet.dll
C:\Users\Administrator\Downloads\karaokeplayerdotnet\karaokeplayerdotnet\CDGNet\bin\Debug\CDGNet.pdb
C:\Users\Administrator\Downloads\karaokeplayerdotnet\karaokeplayerdotnet\CDGNet\bin\Debug\CDGNet.xml
C:\Users\Administrator\Downloads\karaokeplayerdotnet\karaokeplayerdotnet\CDGNet\obj\Debug\ResolveAssemblyReference.cache
C:\Users\Administrator\Downloads\karaokeplayerdotnet\karaokeplayerdotnet\CDGNet\obj\Debug\CDGNet.Resources.resources
C:\Users\Administrator\Downloads\karaokeplayerdotnet\karaokeplayerdotnet\CDGNet\obj\Debug\GenerateResource-ResGen.read.1.tlog
C:\Users\Administrator\Downloads\karaokeplayerdotnet\karaokeplayerdotnet\CDGNet\obj\Debug\GenerateResource-ResGen.write.1.tlog
C:\Users\Administrator\Downloads\karaokeplayerdotnet\karaokeplayerdotnet\CDGNet\obj\Debug\CDGNet.dll
C:\Users\Administrator\Downloads\karaokeplayerdotnet\karaokeplayerdotnet\CDGNet\obj\Debug\CDGNet.xml
C:\Users\Administrator\Downloads\karaokeplayerdotnet\karaokeplayerdotnet\CDGNet\obj\Debug\CDGNet.pdb
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\bin\Debug\CDGNet.dll
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\bin\Debug\CDGNet.pdb
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\bin\Debug\CDGNet.xml
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\obj\Debug\ResolveAssemblyReference.cache
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\obj\Debug\CDGNet.Resources.resources
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\obj\Debug\GenerateResource-ResGen.read.1.tlog
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\obj\Debug\GenerateResource-ResGen.write.1.tlog
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\obj\Debug\CDGNet.dll
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\obj\Debug\CDGNet.xml
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\obj\Debug\CDGNet.pdb

24
CDGNet/obj/Debug/CDGNet.xml

@ -0,0 +1,24 @@ @@ -0,0 +1,24 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>
CDGNet
</name>
</assembly>
<members>
<member name="P:CDGNet.My.Resources.Resources.ResourceManager">
<summary>
Returns the cached ResourceManager instance used by this class.
</summary>
</member><member name="P:CDGNet.My.Resources.Resources.Culture">
<summary>
Overrides the current thread's CurrentUICulture property for all
resource lookups using this strongly typed resource class.
</summary>
</member><member name="T:CDGNet.My.Resources.Resources">
<summary>
A strongly-typed resource class, for looking up localized strings, etc.
</summary>
</member>
</members>
</doc>

BIN
CDGNet/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache

Binary file not shown.

BIN
CDGNet/obj/Debug/GenerateResource-ResGen.read.1.tlog

Binary file not shown.

BIN
CDGNet/obj/Debug/GenerateResource-ResGen.write.1.tlog

Binary file not shown.

BIN
CDGNet/obj/Debug/TempPE/My Project.Resources.Designer.vb.dll

Binary file not shown.

BIN
CDGNet/obj/Release/CDGNet.Resources.resources

Binary file not shown.

BIN
CDGNet/obj/Release/CDGNet.dll

Binary file not shown.

BIN
CDGNet/obj/Release/CDGNet.pdb

Binary file not shown.

28
CDGNet/obj/Release/CDGNet.vbproj.FileListAbsolute.txt

@ -0,0 +1,28 @@ @@ -0,0 +1,28 @@
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\bin\Release\CDGNet.dll
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\bin\Release\CDGNet.pdb
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\bin\Release\CDGNet.xml
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\obj\Release\ResolveAssemblyReference.cache
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\obj\Release\CDGNet.Resources.resources
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\obj\Release\GenerateResource-ResGen.read.1.tlog
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\obj\Release\GenerateResource-ResGen.write.1.tlog
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\obj\Release\CDGNet.dll
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\obj\Release\CDGNet.xml
C:\Users\Administrator\Documents\Visual Studio 2010\Projects\karaokeplayerdotnet\CDGNet\obj\Release\CDGNet.pdb
F:\Network\User Folders\Administrator\My Applications\karaokeplayerdotnet\CDGNet\bin\Release\CDGNet.dll
F:\Network\User Folders\Administrator\My Applications\karaokeplayerdotnet\CDGNet\bin\Release\CDGNet.pdb
F:\Network\User Folders\Administrator\My Applications\karaokeplayerdotnet\CDGNet\bin\Release\CDGNet.xml
F:\Network\User Folders\Administrator\My Applications\karaokeplayerdotnet\CDGNet\obj\Release\CDGNet.Resources.resources
F:\Network\User Folders\Administrator\My Applications\karaokeplayerdotnet\CDGNet\obj\Release\CDGNet.vbproj.GenerateResource.Cache
F:\Network\User Folders\Administrator\My Applications\karaokeplayerdotnet\CDGNet\obj\Release\CDGNet.dll
F:\Network\User Folders\Administrator\My Applications\karaokeplayerdotnet\CDGNet\obj\Release\CDGNet.xml
F:\Network\User Folders\Administrator\My Applications\karaokeplayerdotnet\CDGNet\obj\Release\CDGNet.pdb
F:\Network\User Folders\Administrator\My Applications\karaokeplayerdotnet\CDGNet\bin\Release\MetroFramework.dll
U:\My Applications\karaokeplayerdotnet\CDGNet\bin\Release\CDGNet.dll
U:\My Applications\karaokeplayerdotnet\CDGNet\bin\Release\CDGNet.pdb
U:\My Applications\karaokeplayerdotnet\CDGNet\bin\Release\CDGNet.xml
U:\My Applications\karaokeplayerdotnet\CDGNet\bin\Release\MetroFramework.dll
U:\My Applications\karaokeplayerdotnet\CDGNet\obj\Release\CDGNet.Resources.resources
U:\My Applications\karaokeplayerdotnet\CDGNet\obj\Release\CDGNet.vbproj.GenerateResource.Cache
U:\My Applications\karaokeplayerdotnet\CDGNet\obj\Release\CDGNet.dll
U:\My Applications\karaokeplayerdotnet\CDGNet\obj\Release\CDGNet.xml
U:\My Applications\karaokeplayerdotnet\CDGNet\obj\Release\CDGNet.pdb

BIN
CDGNet/obj/Release/CDGNet.vbproj.GenerateResource.Cache

Binary file not shown.

24
CDGNet/obj/Release/CDGNet.xml

@ -0,0 +1,24 @@ @@ -0,0 +1,24 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>
CDGNet
</name>
</assembly>
<members>
<member name="P:CDGNet.My.Resources.Resources.ResourceManager">
<summary>
Returns the cached ResourceManager instance used by this class.
</summary>
</member><member name="P:CDGNet.My.Resources.Resources.Culture">
<summary>
Overrides the current thread's CurrentUICulture property for all
resource lookups using this strongly typed resource class.
</summary>
</member><member name="T:CDGNet.My.Resources.Resources">
<summary>
A strongly-typed resource class, for looking up localized strings, etc.
</summary>
</member>
</members>
</doc>

BIN
CDGNet/obj/Release/DesignTimeResolveAssemblyReferences.cache

Binary file not shown.

BIN
CDGNet/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache

Binary file not shown.

BIN
CDGNet/obj/Release/GenerateResource-ResGen.read.1.tlog

Binary file not shown.

BIN
CDGNet/obj/Release/GenerateResource-ResGen.write.1.tlog

Binary file not shown.

BIN
CDGNet/obj/Release/TempPE/My Project.Resources.Designer.vb.dll

Binary file not shown.

59
CDGWindow.Designer.vb generated

@ -0,0 +1,59 @@ @@ -0,0 +1,59 @@
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class CDGWindow
Inherits System.Windows.Forms.Form
'Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(CDGWindow))
Me.PictureBox1 = New System.Windows.Forms.PictureBox()
CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'PictureBox1
'
Me.PictureBox1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom
Me.PictureBox1.Dock = System.Windows.Forms.DockStyle.Fill
Me.PictureBox1.Location = New System.Drawing.Point(0, 0)
Me.PictureBox1.Name = "PictureBox1"
Me.PictureBox1.Size = New System.Drawing.Size(803, 494)
Me.PictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom
Me.PictureBox1.TabIndex = 0
Me.PictureBox1.TabStop = False
'
'CDGWindow
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(803, 494)
Me.Controls.Add(Me.PictureBox1)
Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
Me.KeyPreview = True
Me.MaximizeBox = False
Me.Name = "CDGWindow"
Me.ShowInTaskbar = False
Me.Text = "CDG"
Me.TopMost = True
CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
End Sub
Friend WithEvents PictureBox1 As System.Windows.Forms.PictureBox
End Class

143
CDGWindow.resx

@ -0,0 +1,143 @@ @@ -0,0 +1,143 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>