Merge branch 'master' of http://gitblit.broconcentric.com:8088/r/M071
| | |
| | | EndProject |
| | | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Bro.Device.Gocator", "src\Bro.Device.Gocator\Bro.Device.Gocator.csproj", "{112009F0-7902-454B-9A6C-A3AFC8FA8FFF}" |
| | | EndProject |
| | | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GocatorTest", "src\GocatorTest\GocatorTest.csproj", "{CD0809C4-6E03-4F04-8806-59C29A4C54CE}" |
| | | EndProject |
| | | Global |
| | | GlobalSection(SolutionConfigurationPlatforms) = preSolution |
| | | Debug|Any CPU = Debug|Any CPU |
| | | Debug|x64 = Debug|x64 |
| | | Debug|x86 = Debug|x86 |
| | | Release|Any CPU = Release|Any CPU |
| | | Release|x64 = Release|x64 |
| | | Release|x86 = Release|x86 |
| | | EndGlobalSection |
| | | GlobalSection(ProjectConfigurationPlatforms) = postSolution |
| | | {987308DD-8BAA-463A-94E2-77D62E01A5BF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {987308DD-8BAA-463A-94E2-77D62E01A5BF}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {987308DD-8BAA-463A-94E2-77D62E01A5BF}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {987308DD-8BAA-463A-94E2-77D62E01A5BF}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {987308DD-8BAA-463A-94E2-77D62E01A5BF}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {987308DD-8BAA-463A-94E2-77D62E01A5BF}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {987308DD-8BAA-463A-94E2-77D62E01A5BF}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {987308DD-8BAA-463A-94E2-77D62E01A5BF}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {987308DD-8BAA-463A-94E2-77D62E01A5BF}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {987308DD-8BAA-463A-94E2-77D62E01A5BF}.Release|x64.Build.0 = Release|Any CPU |
| | | {987308DD-8BAA-463A-94E2-77D62E01A5BF}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {987308DD-8BAA-463A-94E2-77D62E01A5BF}.Release|x86.Build.0 = Release|Any CPU |
| | | {1A3CBFE7-3F78-42C3-95C5-10360450DBEA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {1A3CBFE7-3F78-42C3-95C5-10360450DBEA}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {1A3CBFE7-3F78-42C3-95C5-10360450DBEA}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {1A3CBFE7-3F78-42C3-95C5-10360450DBEA}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {1A3CBFE7-3F78-42C3-95C5-10360450DBEA}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {1A3CBFE7-3F78-42C3-95C5-10360450DBEA}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {1A3CBFE7-3F78-42C3-95C5-10360450DBEA}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {1A3CBFE7-3F78-42C3-95C5-10360450DBEA}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {1A3CBFE7-3F78-42C3-95C5-10360450DBEA}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {1A3CBFE7-3F78-42C3-95C5-10360450DBEA}.Release|x64.Build.0 = Release|Any CPU |
| | | {1A3CBFE7-3F78-42C3-95C5-10360450DBEA}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {1A3CBFE7-3F78-42C3-95C5-10360450DBEA}.Release|x86.Build.0 = Release|Any CPU |
| | | {5D6BD683-98B6-4D69-9FB7-7BC5AFF13FC4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {5D6BD683-98B6-4D69-9FB7-7BC5AFF13FC4}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {5D6BD683-98B6-4D69-9FB7-7BC5AFF13FC4}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {5D6BD683-98B6-4D69-9FB7-7BC5AFF13FC4}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {5D6BD683-98B6-4D69-9FB7-7BC5AFF13FC4}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {5D6BD683-98B6-4D69-9FB7-7BC5AFF13FC4}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {5D6BD683-98B6-4D69-9FB7-7BC5AFF13FC4}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {5D6BD683-98B6-4D69-9FB7-7BC5AFF13FC4}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {5D6BD683-98B6-4D69-9FB7-7BC5AFF13FC4}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {5D6BD683-98B6-4D69-9FB7-7BC5AFF13FC4}.Release|x64.Build.0 = Release|Any CPU |
| | | {5D6BD683-98B6-4D69-9FB7-7BC5AFF13FC4}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {5D6BD683-98B6-4D69-9FB7-7BC5AFF13FC4}.Release|x86.Build.0 = Release|Any CPU |
| | | {45C51C86-9767-49C7-B2C3-2E9F60098E65}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {45C51C86-9767-49C7-B2C3-2E9F60098E65}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {45C51C86-9767-49C7-B2C3-2E9F60098E65}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {45C51C86-9767-49C7-B2C3-2E9F60098E65}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {45C51C86-9767-49C7-B2C3-2E9F60098E65}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {45C51C86-9767-49C7-B2C3-2E9F60098E65}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {45C51C86-9767-49C7-B2C3-2E9F60098E65}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {45C51C86-9767-49C7-B2C3-2E9F60098E65}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {45C51C86-9767-49C7-B2C3-2E9F60098E65}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {45C51C86-9767-49C7-B2C3-2E9F60098E65}.Release|x64.Build.0 = Release|Any CPU |
| | | {45C51C86-9767-49C7-B2C3-2E9F60098E65}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {45C51C86-9767-49C7-B2C3-2E9F60098E65}.Release|x86.Build.0 = Release|Any CPU |
| | | {197C5AA8-9609-4D1C-B1E3-5879006EAAF4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {197C5AA8-9609-4D1C-B1E3-5879006EAAF4}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {197C5AA8-9609-4D1C-B1E3-5879006EAAF4}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {197C5AA8-9609-4D1C-B1E3-5879006EAAF4}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {197C5AA8-9609-4D1C-B1E3-5879006EAAF4}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {197C5AA8-9609-4D1C-B1E3-5879006EAAF4}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {197C5AA8-9609-4D1C-B1E3-5879006EAAF4}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {197C5AA8-9609-4D1C-B1E3-5879006EAAF4}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {197C5AA8-9609-4D1C-B1E3-5879006EAAF4}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {197C5AA8-9609-4D1C-B1E3-5879006EAAF4}.Release|x64.Build.0 = Release|Any CPU |
| | | {197C5AA8-9609-4D1C-B1E3-5879006EAAF4}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {197C5AA8-9609-4D1C-B1E3-5879006EAAF4}.Release|x86.Build.0 = Release|Any CPU |
| | | {DD02C60E-560B-40C0-AD7F-523F0B4AA4FD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {DD02C60E-560B-40C0-AD7F-523F0B4AA4FD}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {DD02C60E-560B-40C0-AD7F-523F0B4AA4FD}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {DD02C60E-560B-40C0-AD7F-523F0B4AA4FD}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {DD02C60E-560B-40C0-AD7F-523F0B4AA4FD}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {DD02C60E-560B-40C0-AD7F-523F0B4AA4FD}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {DD02C60E-560B-40C0-AD7F-523F0B4AA4FD}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {DD02C60E-560B-40C0-AD7F-523F0B4AA4FD}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {DD02C60E-560B-40C0-AD7F-523F0B4AA4FD}.Debug|x64.ActiveCfg = Debug|x64 |
| | | {DD02C60E-560B-40C0-AD7F-523F0B4AA4FD}.Debug|x64.Build.0 = Debug|x64 |
| | | {DD02C60E-560B-40C0-AD7F-523F0B4AA4FD}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {DD02C60E-560B-40C0-AD7F-523F0B4AA4FD}.Release|x64.Build.0 = Release|Any CPU |
| | | {DD02C60E-560B-40C0-AD7F-523F0B4AA4FD}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {DD02C60E-560B-40C0-AD7F-523F0B4AA4FD}.Release|x86.Build.0 = Release|Any CPU |
| | | {E6429C64-92B3-46A2-B35E-579856D47F62}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {E6429C64-92B3-46A2-B35E-579856D47F62}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {E6429C64-92B3-46A2-B35E-579856D47F62}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {E6429C64-92B3-46A2-B35E-579856D47F62}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {E6429C64-92B3-46A2-B35E-579856D47F62}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {E6429C64-92B3-46A2-B35E-579856D47F62}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {E6429C64-92B3-46A2-B35E-579856D47F62}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {E6429C64-92B3-46A2-B35E-579856D47F62}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {E6429C64-92B3-46A2-B35E-579856D47F62}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {E6429C64-92B3-46A2-B35E-579856D47F62}.Release|x64.Build.0 = Release|Any CPU |
| | | {E6429C64-92B3-46A2-B35E-579856D47F62}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {E6429C64-92B3-46A2-B35E-579856D47F62}.Release|x86.Build.0 = Release|Any CPU |
| | | {741F6491-57C7-479A-B391-09BBA9FBA9DC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {741F6491-57C7-479A-B391-09BBA9FBA9DC}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {741F6491-57C7-479A-B391-09BBA9FBA9DC}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {741F6491-57C7-479A-B391-09BBA9FBA9DC}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {741F6491-57C7-479A-B391-09BBA9FBA9DC}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {741F6491-57C7-479A-B391-09BBA9FBA9DC}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {741F6491-57C7-479A-B391-09BBA9FBA9DC}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {741F6491-57C7-479A-B391-09BBA9FBA9DC}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {741F6491-57C7-479A-B391-09BBA9FBA9DC}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {741F6491-57C7-479A-B391-09BBA9FBA9DC}.Release|x64.Build.0 = Release|Any CPU |
| | | {741F6491-57C7-479A-B391-09BBA9FBA9DC}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {741F6491-57C7-479A-B391-09BBA9FBA9DC}.Release|x86.Build.0 = Release|Any CPU |
| | | {B536003E-70BA-4701-B8FD-BAFA303AB4E2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {B536003E-70BA-4701-B8FD-BAFA303AB4E2}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {B536003E-70BA-4701-B8FD-BAFA303AB4E2}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {B536003E-70BA-4701-B8FD-BAFA303AB4E2}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {B536003E-70BA-4701-B8FD-BAFA303AB4E2}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {B536003E-70BA-4701-B8FD-BAFA303AB4E2}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {B536003E-70BA-4701-B8FD-BAFA303AB4E2}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {B536003E-70BA-4701-B8FD-BAFA303AB4E2}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {B536003E-70BA-4701-B8FD-BAFA303AB4E2}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {B536003E-70BA-4701-B8FD-BAFA303AB4E2}.Release|x64.Build.0 = Release|Any CPU |
| | | {B536003E-70BA-4701-B8FD-BAFA303AB4E2}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {B536003E-70BA-4701-B8FD-BAFA303AB4E2}.Release|x86.Build.0 = Release|Any CPU |
| | | {230B0FFF-F6AF-45FE-AAF7-B4B66250DD58}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {230B0FFF-F6AF-45FE-AAF7-B4B66250DD58}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {230B0FFF-F6AF-45FE-AAF7-B4B66250DD58}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {230B0FFF-F6AF-45FE-AAF7-B4B66250DD58}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {230B0FFF-F6AF-45FE-AAF7-B4B66250DD58}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {230B0FFF-F6AF-45FE-AAF7-B4B66250DD58}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {230B0FFF-F6AF-45FE-AAF7-B4B66250DD58}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {230B0FFF-F6AF-45FE-AAF7-B4B66250DD58}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {230B0FFF-F6AF-45FE-AAF7-B4B66250DD58}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {230B0FFF-F6AF-45FE-AAF7-B4B66250DD58}.Release|x64.Build.0 = Release|Any CPU |
| | | {230B0FFF-F6AF-45FE-AAF7-B4B66250DD58}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {230B0FFF-F6AF-45FE-AAF7-B4B66250DD58}.Release|x86.Build.0 = Release|Any CPU |
| | | {AD645C48-5811-4B1E-B81F-D35D5E6B577F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {AD645C48-5811-4B1E-B81F-D35D5E6B577F}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {AD645C48-5811-4B1E-B81F-D35D5E6B577F}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {AD645C48-5811-4B1E-B81F-D35D5E6B577F}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {AD645C48-5811-4B1E-B81F-D35D5E6B577F}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {AD645C48-5811-4B1E-B81F-D35D5E6B577F}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {AD645C48-5811-4B1E-B81F-D35D5E6B577F}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {AD645C48-5811-4B1E-B81F-D35D5E6B577F}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {AD645C48-5811-4B1E-B81F-D35D5E6B577F}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {AD645C48-5811-4B1E-B81F-D35D5E6B577F}.Release|x64.Build.0 = Release|Any CPU |
| | | {AD645C48-5811-4B1E-B81F-D35D5E6B577F}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {AD645C48-5811-4B1E-B81F-D35D5E6B577F}.Release|x86.Build.0 = Release|Any CPU |
| | | {65302D6E-9918-4E4C-92B4-75C8830C6BA7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {65302D6E-9918-4E4C-92B4-75C8830C6BA7}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {65302D6E-9918-4E4C-92B4-75C8830C6BA7}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {65302D6E-9918-4E4C-92B4-75C8830C6BA7}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {65302D6E-9918-4E4C-92B4-75C8830C6BA7}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {65302D6E-9918-4E4C-92B4-75C8830C6BA7}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {65302D6E-9918-4E4C-92B4-75C8830C6BA7}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {65302D6E-9918-4E4C-92B4-75C8830C6BA7}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {65302D6E-9918-4E4C-92B4-75C8830C6BA7}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {65302D6E-9918-4E4C-92B4-75C8830C6BA7}.Release|x64.Build.0 = Release|Any CPU |
| | | {65302D6E-9918-4E4C-92B4-75C8830C6BA7}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {65302D6E-9918-4E4C-92B4-75C8830C6BA7}.Release|x86.Build.0 = Release|Any CPU |
| | | {B50C1309-495C-4ADF-8A3D-6F6A06CCC4CC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {B50C1309-495C-4ADF-8A3D-6F6A06CCC4CC}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {B50C1309-495C-4ADF-8A3D-6F6A06CCC4CC}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {B50C1309-495C-4ADF-8A3D-6F6A06CCC4CC}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {B50C1309-495C-4ADF-8A3D-6F6A06CCC4CC}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {B50C1309-495C-4ADF-8A3D-6F6A06CCC4CC}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {B50C1309-495C-4ADF-8A3D-6F6A06CCC4CC}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {B50C1309-495C-4ADF-8A3D-6F6A06CCC4CC}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {B50C1309-495C-4ADF-8A3D-6F6A06CCC4CC}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {B50C1309-495C-4ADF-8A3D-6F6A06CCC4CC}.Release|x64.Build.0 = Release|Any CPU |
| | | {B50C1309-495C-4ADF-8A3D-6F6A06CCC4CC}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {B50C1309-495C-4ADF-8A3D-6F6A06CCC4CC}.Release|x86.Build.0 = Release|Any CPU |
| | | {112009F0-7902-454B-9A6C-A3AFC8FA8FFF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU |
| | | {112009F0-7902-454B-9A6C-A3AFC8FA8FFF}.Debug|Any CPU.Build.0 = Debug|Any CPU |
| | | {112009F0-7902-454B-9A6C-A3AFC8FA8FFF}.Debug|x64.ActiveCfg = Debug|Any CPU |
| | | {112009F0-7902-454B-9A6C-A3AFC8FA8FFF}.Debug|x64.Build.0 = Debug|Any CPU |
| | | {112009F0-7902-454B-9A6C-A3AFC8FA8FFF}.Debug|x86.ActiveCfg = Debug|Any CPU |
| | | {112009F0-7902-454B-9A6C-A3AFC8FA8FFF}.Debug|x86.Build.0 = Debug|Any CPU |
| | | {112009F0-7902-454B-9A6C-A3AFC8FA8FFF}.Release|Any CPU.ActiveCfg = Release|Any CPU |
| | | {112009F0-7902-454B-9A6C-A3AFC8FA8FFF}.Release|Any CPU.Build.0 = Release|Any CPU |
| | | {112009F0-7902-454B-9A6C-A3AFC8FA8FFF}.Release|x64.ActiveCfg = Release|Any CPU |
| | | {112009F0-7902-454B-9A6C-A3AFC8FA8FFF}.Release|x64.Build.0 = Release|Any CPU |
| | | {112009F0-7902-454B-9A6C-A3AFC8FA8FFF}.Release|x86.ActiveCfg = Release|Any CPU |
| | | {112009F0-7902-454B-9A6C-A3AFC8FA8FFF}.Release|x86.Build.0 = Release|Any CPU |
| | | {CD0809C4-6E03-4F04-8806-59C29A4C54CE}.Debug|x64.ActiveCfg = Debug|x64 |
| | | {CD0809C4-6E03-4F04-8806-59C29A4C54CE}.Debug|x64.Build.0 = Debug|x64 |
| | | {CD0809C4-6E03-4F04-8806-59C29A4C54CE}.Release|x64.ActiveCfg = Release|x64 |
| | | {CD0809C4-6E03-4F04-8806-59C29A4C54CE}.Release|x64.Build.0 = Release|x64 |
| | | EndGlobalSection |
| | | GlobalSection(SolutionProperties) = preSolution |
| | | HideSolutionNode = FALSE |
| | |
| | | <PropertyGroup> |
| | | <AutoGenerateBindingRedirects>false</AutoGenerateBindingRedirects> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|AnyCPU'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <AllowUnsafeBlocks>true</AllowUnsafeBlocks> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>AnyCPU</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>..\Debug\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <AllowUnsafeBlocks>true</AllowUnsafeBlocks> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> |
| | | <OutputPath>bin\x64\Release\</OutputPath> |
| | | <DefineConstants>TRACE</DefineConstants> |
| | | <Optimize>true</Optimize> |
| | | <DebugType>pdbonly</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\x64\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <AllowUnsafeBlocks>true</AllowUnsafeBlocks> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <ItemGroup> |
| | | <Reference Include="Autofac, Version=4.9.4.0, Culture=neutral, PublicKeyToken=17863af14b0044da, processorArchitecture=MSIL"> |
| | | <HintPath>..\..\packages\Autofac.4.9.4\lib\net45\Autofac.dll</HintPath> |
| | |
| | | using System.Drawing.Imaging; |
| | | using System.IO; |
| | | using System.Linq; |
| | | using System.Runtime.InteropServices; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | using static Bro.Common.Helper.EnumHelper; |
| | |
| | | |
| | | private System.Threading.Timer clearImageTimer = null; |
| | | #endregion |
| | | |
| | | #region 图片转换 |
| | | [DllImport("kernel32.dll", EntryPoint = "CopyMemory", SetLastError = false)] |
| | | public static extern void CopyMemory(IntPtr dest, IntPtr src, long count); |
| | | |
| | | protected async void Generate8GrayImageByPointer(int width, int height, IntPtr dataPtr, string imgSetId) |
| | | { |
| | | await Task.Run(() => |
| | | { |
| | | //************************Mono8 转 Bitmap******************************* |
| | | Bitmap bmp = new Bitmap(width, height, PixelFormat.Format8bppIndexed); |
| | | Bitmap showImage = new Bitmap(width, height, PixelFormat.Format8bppIndexed); |
| | | |
| | | ColorPalette cp = bmp.Palette; |
| | | for (int i = 0; i < 256; i++) |
| | | { |
| | | cp.Entries[i] = Color.FromArgb(i, i, i); |
| | | } |
| | | bmp.Palette = cp; |
| | | |
| | | ColorPalette cp1 = showImage.Palette; |
| | | for (int i = 0; i < 256; i++) |
| | | { |
| | | cp1.Entries[i] = Color.FromArgb(i, i, i); |
| | | } |
| | | showImage.Palette = cp1; |
| | | |
| | | long[] ptr = new long[3]; |
| | | Rectangle rect = new Rectangle(0, 0, width, height); |
| | | BitmapData bitmapData = bmp.LockBits(rect, ImageLockMode.WriteOnly, PixelFormat.Format8bppIndexed); |
| | | BitmapData showImageData = showImage.LockBits(rect, ImageLockMode.WriteOnly, PixelFormat.Format8bppIndexed); |
| | | int PixelSize = Bitmap.GetPixelFormatSize(bitmapData.PixelFormat) / 8; |
| | | |
| | | if (width % 4 == 0) |
| | | { |
| | | CopyMemory(bitmapData.Scan0, dataPtr, width * height * PixelSize); |
| | | CopyMemory(showImageData.Scan0, dataPtr, width * height * PixelSize); |
| | | } |
| | | else |
| | | { |
| | | ptr[0] = bitmapData.Scan0.ToInt64(); |
| | | ptr[1] = showImageData.Scan0.ToInt64(); |
| | | ptr[2] = (long)dataPtr; |
| | | for (int i = 0; i < height - 1; i++) |
| | | { |
| | | ptr[2] += width; |
| | | |
| | | CopyMemory((IntPtr)ptr[0], (IntPtr)ptr[2], width * PixelSize); |
| | | CopyMemory((IntPtr)ptr[1], (IntPtr)ptr[2], width * PixelSize); |
| | | ptr[0] += bitmapData.Stride; |
| | | ptr[1] += showImageData.Stride; |
| | | } |
| | | } |
| | | bmp.UnlockBits(bitmapData); |
| | | showImage.UnlockBits(showImageData); |
| | | |
| | | SaveOriginImage(bmp, showImage, imgSetId); |
| | | }); |
| | | } |
| | | |
| | | protected async void Generate16GrayImageByPointer(int width, int height, IntPtr dataPtr, string imgSetId) |
| | | { |
| | | await Task.Run(() => |
| | | { |
| | | int widthIn4 = (int)Math.Ceiling(width / 4.0) * 4; |
| | | |
| | | Bitmap bmp = new Bitmap(widthIn4, height, PixelFormat.Format48bppRgb); |
| | | Bitmap showImage = new Bitmap(widthIn4, height, PixelFormat.Format48bppRgb); |
| | | |
| | | Rectangle rect = new Rectangle(0, 0, widthIn4, height); |
| | | BitmapData bitmapData = bmp.LockBits(rect, ImageLockMode.WriteOnly, PixelFormat.Format48bppRgb); |
| | | BitmapData showImageData = showImage.LockBits(rect, ImageLockMode.WriteOnly, PixelFormat.Format48bppRgb); |
| | | unsafe |
| | | { |
| | | byte* data = (byte*)dataPtr; |
| | | byte* bitmapBuffer = (byte*)bitmapData.Scan0; |
| | | byte* showBitmapBuffer = (byte*)showImageData.Scan0; |
| | | |
| | | //Parallel.For(0, height, i => |
| | | // { |
| | | // Parallel.For(0, width, j => |
| | | // { |
| | | // showBitmapBuffer[(i * widthIn4 + j) * 6] = bitmapBuffer[(i * widthIn4 + j) * 6] = data[(i * width + j) * 2]; |
| | | // showBitmapBuffer[(i * widthIn4 + j) * 6 + 1] = bitmapBuffer[(i * widthIn4 + j) * 6 + 1] = data[(i * width + j) * 2 + 1]; |
| | | // }); |
| | | // }); |
| | | |
| | | Parallel.For(0, width * height, i => |
| | | { |
| | | int index = (i + 1) % width + widthIn4 * ((i + 1) / width) - 1; |
| | | |
| | | showBitmapBuffer[index * 6] = data[i * 2]; |
| | | showBitmapBuffer[index * 6 + 1] = data[i * 2 + 1]; |
| | | }); |
| | | } |
| | | |
| | | bmp.UnlockBits(bitmapData); |
| | | showImage.UnlockBits(showImageData); |
| | | |
| | | //showImage.Save(@"D:\1.bmp", ImageFormat.Bmp); |
| | | SaveOriginImage(bmp, showImage, imgSetId); |
| | | }); |
| | | } |
| | | #endregion |
| | | } |
| | | |
| | | #region Config |
| | |
| | | [Category("取像配置")] |
| | | [Description("曝光")] |
| | | [DisplayName("曝光")] |
| | | public float Exposure |
| | | public virtual float Exposure |
| | | { |
| | | get => exposure; |
| | | set |
| | |
| | | [Category("取像配置")] |
| | | [Description("增益")] |
| | | [DisplayName("增益")] |
| | | public float Gain { get; set; } |
| | | public virtual float Gain { get; set; } |
| | | |
| | | [Category("取像配置")] |
| | | [Description("曝光修改后等待时间,单位ms。针对部分场景确保曝光修改及时生效。")] |
| | | [DisplayName("曝光等待")] |
| | | public int ExposureWaitTime { get; set; } |
| | | public virtual int ExposureWaitTime { get; set; } |
| | | |
| | | [Category("取像配置")] |
| | | [Description("拍摄后曝光值。可在一次拍摄后将曝光修改为下次拍摄的曝光值,节约曝光生效时间。")] |
| | | [DisplayName("拍摄后曝光")] |
| | | public float ExposureAfterSnap { get; set; } |
| | | public virtual float ExposureAfterSnap { get; set; } |
| | | |
| | | [Category("算法配置")] |
| | | [Description("算法路径")] |
| | |
| | | [Category("相机设置")] |
| | | [Description("相机IP地址")] |
| | | [DisplayName("相机IP地址")] |
| | | public string CameraIP { get; set; } |
| | | public virtual string CameraIP { get; set; } |
| | | |
| | | [Category("相机设置")] |
| | | [Description("上位机IP地址")] |
| | | [DisplayName("上位机IP地址")] |
| | | public string ComputerIP { get; set; } |
| | | public virtual string ComputerIP { get; set; } |
| | | |
| | | [Category("保存设置")] |
| | | [Description("图片保存目录")] |
| | | [DisplayName("图片保存目录")] |
| | | [Editor(typeof(FoldDialogEditor), typeof(UITypeEditor))] |
| | | public string ImgDirectory { get; set; } = @"../Images"; |
| | | public virtual string ImgDirectory { get; set; } = @"../Images"; |
| | | |
| | | [Category("保存设置")] |
| | | [Description("图片保存天数")] |
| | | [DisplayName("图片保存天数")] |
| | | public int SaveImageDayLimit { get; set; } = 0; |
| | | public virtual int SaveImageDayLimit { get; set; } = 0; |
| | | |
| | | [Category("保存设置")] |
| | | [Description("图片保存默认配置,主要用于硬触发等没有明确操作配置说明的图片保存")] |
| | | [DisplayName("图片保存默认配置")] |
| | | [TypeConverter(typeof(ComplexObjectConvert))] |
| | | [Editor(typeof(PropertyObjectEditor), typeof(UITypeEditor))] |
| | | public ImageSaveOption ImageSaveOption { get; set; } = new ImageSaveOption(); |
| | | public virtual ImageSaveOption ImageSaveOption { get; set; } = new ImageSaveOption(); |
| | | |
| | | [Category("拍摄设置")] |
| | | [Description("默认曝光值,相机开启后就设置该曝光值")] |
| | | [DisplayName("默认曝光值")] |
| | | public float DefaultExposure { get; set; } |
| | | public virtual float DefaultExposure { get; set; } |
| | | } |
| | | #endregion |
| | | |
| | |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <WarningLevel>4</WarningLevel> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|AnyCPU'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>AnyCPU</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>..\Debug\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> |
| | | <OutputPath>bin\x64\Release\</OutputPath> |
| | | <DefineConstants>TRACE</DefineConstants> |
| | | <Optimize>true</Optimize> |
| | | <DebugType>pdbonly</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\x64\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <ItemGroup> |
| | | <Reference Include="Autofac, Version=4.9.4.0, Culture=neutral, PublicKeyToken=17863af14b0044da, processorArchitecture=MSIL"> |
| | | <HintPath>..\..\packages\Autofac.4.9.4\lib\net45\Autofac.dll</HintPath> |
| | |
| | | public interface IRunCtrl |
| | | { |
| | | IDevice Device { get; set; } |
| | | |
| | | //IOperationConfig OpConfig { get; set; } |
| | | |
| | | //void UploadOperationConfig(IOperationConfig opConfig); |
| | | |
| | | //IOperationConfig GetOperationConfig(); |
| | | } |
| | | |
| | | public interface IEditCtrl |
| | | { |
| | | IRunCtrl RunCtrl { get; set; } |
| | | IOperationConfig OpConfig { get; set; } |
| | | } |
| | | //public interface IEditCtrl |
| | | //{ |
| | | // IRunCtrl RunCtrl { get; set; } |
| | | // IOperationConfig OpConfig { get; set; } |
| | | //} |
| | | } |
| | |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <WarningLevel>4</WarningLevel> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> |
| | | <DebugType>pdbonly</DebugType> |
| | |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <WarningLevel>4</WarningLevel> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|AnyCPU'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <OutputPath>bin\x64\Debug\</OutputPath> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <OutputPath>bin\x64\Release\</OutputPath> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|x64'"> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <OutputPath>bin\x64\Debug1\</OutputPath> |
| | | </PropertyGroup> |
| | | <ItemGroup> |
| | | <Reference Include="GoSdkNet"> |
| | | <HintPath>..\..\libs\gocator\GoSdkNet.dll</HintPath> |
| | | </Reference> |
| | | <Reference Include="kApiNet"> |
| | | <HintPath>..\..\libs\gocator\kApiNet.dll</HintPath> |
| | | </Reference> |
| | | <Reference Include="System" /> |
| | | <Reference Include="System.Core" /> |
| | | <Reference Include="System.Windows.Forms" /> |
| | | <Reference Include="System.Xml.Linq" /> |
| | | <Reference Include="System.Data.DataSetExtensions" /> |
| | | <Reference Include="Microsoft.CSharp" /> |
| | |
| | | <Project>{1a3cbfe7-3f78-42c3-95c5-10360450dbea}</Project> |
| | | <Name>Bro.Common.Model</Name> |
| | | </ProjectReference> |
| | | <ProjectReference Include="..\Bro.UI.Device.Winform\Bro.UI.Device.Winform.csproj"> |
| | | <Project>{E6429C64-92B3-46A2-B35E-579856D47F62}</Project> |
| | | <Name>Bro.UI.Device.Winform</Name> |
| | | </ProjectReference> |
| | | </ItemGroup> |
| | | <ItemGroup> |
| | | <Content Include="GoSdk.dll"> |
| | | <CopyToOutputDirectory>Always</CopyToOutputDirectory> |
| | | </Content> |
| | | <Content Include="kApi.dll"> |
| | | <CopyToOutputDirectory>Always</CopyToOutputDirectory> |
| | | </Content> |
| | | <Content Include="msvcp120.dll"> |
| | | <CopyToOutputDirectory>Always</CopyToOutputDirectory> |
| | | </Content> |
| | | <Content Include="msvcr120.dll"> |
| | | <CopyToOutputDirectory>Always</CopyToOutputDirectory> |
| | | </Content> |
| | | </ItemGroup> |
| | | <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> |
| | | </Project> |
| | |
| | | using Bro.Common.Base; |
| | | using Bro.Common.Base.UI; |
| | | using Bro.Common.Helper; |
| | | using Bro.Common.Interface; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.ComponentModel; |
| | | using System.Linq; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | |
| | | [Device("Gocator", "Gocator激光扫描仪", EnumHelper.DeviceAttributeType.InitialConfig)] |
| | | public class GocatorInitialConfig : CameraInitialConfigBase |
| | | { |
| | | #region Not used |
| | | [Browsable(false)] |
| | | public override string SerialNum { get; set; } |
| | | [Browsable(false)] |
| | | public override string ComputerIP { get; set; } |
| | | #endregion |
| | | |
| | | [Category("计算设置")] |
| | | [Description("true:计算时使用加速器,false:不使用加速器")] |
| | | [DefaultValue(false)] |
| | | public bool IsUseAccelerator { get; set; } = false; |
| | | |
| | | [Category("拍摄设置")] |
| | | [Description("默认Job")] |
| | | [DisplayName("默认Job")] |
| | | [DefaultValue("")] |
| | | public string DefaultJob { get; set; } = ""; |
| | | |
| | | [Category("拍摄设置")] |
| | | [Description("取像超时设置,单位ms")] |
| | | [DefaultValue(1000)] |
| | | public int SnapshotTimeout { get; set; } = 1000; |
| | | |
| | | //[Category("采图模式")] |
| | | //[Description("是否硬触发模式。true:硬触发;false:软触发")] |
| | | //[DisplayName("硬触发")] |
| | | //public bool IsHardwareTrigger { get; set; } = false; |
| | | |
| | | [Category("采图模式")] |
| | | [Description("true:异步/被动采图模式 false:同步/主动采图模式")] |
| | | [DefaultValue(false)] |
| | | public bool IsAsyncMode { get; set; } = false; |
| | | } |
| | | |
| | | [Device("Gocator", "Gocator激光扫描仪", EnumHelper.DeviceAttributeType.OperationConfig)] |
| | | public class GocatorOperationConfig : CameraOprerationConfigBase |
| | | { |
| | | [Category("算法配置")] |
| | | [Description("切换Job名称")] |
| | | public string JobName { get; set; } |
| | | |
| | | [Category("取像配置")] |
| | | [Description("true: 取像操作 false: 不是取像操作")] |
| | | public bool IsSnapshotAction { get; set; } |
| | | |
| | | [Category("取像配置")] |
| | | [Description("true: 连接操作 false: 断开连接操作")] |
| | | public bool IsOpenConnection { get; set; } |
| | | |
| | | public new string GetDisplayText() |
| | | { |
| | | return $"{(IsSnapshotAction ? "取像操作" : "")} {(IsOpenConnection ? "开始连接" : "")} 算法:{AlgorithemPath}"; |
| | | } |
| | | |
| | | #region Not used |
| | | [Browsable(false)] |
| | | public override float ExposureAfterSnap { get; set; } |
| | | [Browsable(false)] |
| | | public override int ExposureWaitTime { get; set; } |
| | | [Browsable(false)] |
| | | public override float Gain { get; set; } |
| | | #endregion |
| | | } |
| | | |
| | | [Device("Gocator", "Gocator激光扫描仪", EnumHelper.DeviceAttributeType.RunCtrl)] |
| | | public class GocatorRunCtrl : CtrlCameraRunBase |
| | | { |
| | | public GocatorRunCtrl(IDevice device) : base(device) { } |
| | | } |
| | | } |
| | |
| | | using Bro.Common.Base; |
| | | using Bro.Common.Helper; |
| | | using Bro.Common.Interface; |
| | | using Lmi3d.GoSdk; |
| | | using Lmi3d.GoSdk.Messages; |
| | | using Lmi3d.Zen; |
| | | using Lmi3d.Zen.Io; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Runtime.InteropServices; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | |
| | |
| | | [Device("Gocator", "Gocator激光扫描仪", EnumHelper.DeviceAttributeType.Device)] |
| | | public class GocatorDriver : CameraBase |
| | | { |
| | | #region CameraBase |
| | | public override IOperationConfig GetOperationConfigFromDevice() |
| | | { |
| | | throw new NotImplementedException(); |
| | | var opConfig = new GocatorOperationConfig(); |
| | | GoSetup setup = sensor.Setup; |
| | | opConfig.Exposure = (float)setup.GetExposure(GoRole.Main); |
| | | opConfig.JobName = sensor.DefaultJob; |
| | | |
| | | return opConfig; |
| | | } |
| | | |
| | | public override void Snapshot() |
| | | { |
| | | throw new NotImplementedException(); |
| | | if (IIConfig.IsAsyncMode) |
| | | { |
| | | |
| | | } |
| | | else |
| | | { |
| | | GoDataSet dataSet = null; |
| | | |
| | | try |
| | | { |
| | | dataSet = system.ReceiveData(IIConfig.SnapshotTimeout); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | LogAsync(DateTime.Now, $"{Name}获取图像异常", ex.GetExceptionMessage()); |
| | | return; |
| | | } |
| | | |
| | | HandleGoData(dataSet); |
| | | } |
| | | } |
| | | |
| | | private void HandleGoData(GoDataSet dataSet) |
| | | { |
| | | if (dataSet == null) |
| | | return; |
| | | |
| | | for (UInt32 i = 0; i < dataSet.Count; i++) |
| | | { |
| | | GoDataMsg dataObj = (GoDataMsg)dataSet.Get(i); |
| | | switch (dataObj.MessageType) |
| | | { |
| | | //case GoDataMessageType.Stamp: |
| | | // { |
| | | // GoStampMsg stampMsg = (GoStampMsg)dataObj; |
| | | // for (UInt32 j = 0; j < stampMsg.Count; j++) |
| | | // { |
| | | // GoStamp stamp = stampMsg.Get(j); |
| | | // Console.WriteLine("Frame Index = {0}", stamp.FrameIndex); |
| | | // Console.WriteLine("Time Stamp = {0}", stamp.Timestamp); |
| | | // Console.WriteLine("Encoder Value = {0}", stamp.Encoder); |
| | | // } |
| | | // } |
| | | // break; |
| | | case GoDataMessageType.Surface: |
| | | { |
| | | GoSurfaceMsg surfaceMsg = (GoSurfaceMsg)dataObj; |
| | | long width = surfaceMsg.Width; |
| | | long height = surfaceMsg.Length; |
| | | long bufferSize = width * height; |
| | | IntPtr bufferPointer = surfaceMsg.Data; |
| | | |
| | | //Console.WriteLine("Whole Part Height Map received:"); |
| | | //Console.WriteLine(" Buffer width: {0}", width); |
| | | //Console.WriteLine(" Buffer height: {0}", height); |
| | | |
| | | //short[] ranges = new short[bufferSize]; |
| | | //Marshal.Copy(bufferPointer, ranges, 0, ranges.Length); |
| | | |
| | | Generate16GrayImageByPointer((int)(width / 1), (int)(height / 1), bufferPointer, ""); |
| | | } |
| | | break; |
| | | //case GoDataMessageType.SurfaceIntensity: |
| | | // { |
| | | // GoSurfaceIntensityMsg surfaceMsg = (GoSurfaceIntensityMsg)dataObj; |
| | | // long width = surfaceMsg.Width; |
| | | // long height = surfaceMsg.Length; |
| | | // long bufferSize = width * height; |
| | | // IntPtr bufferPointeri = surfaceMsg.Data; |
| | | |
| | | // //Console.WriteLine("Whole Part Intensity Image received:"); |
| | | // //Console.WriteLine(" Buffer width: {0}", width); |
| | | // //Console.WriteLine(" Buffer height: {0}", height); |
| | | // //byte[] ranges = new byte[bufferSize]; |
| | | // //Marshal.Copy(bufferPointeri, ranges, 0, ranges.Length); |
| | | // //GenerateGrayImageByPointer((int)width, (int)height, bufferPointeri, ""); |
| | | // } |
| | | // break; |
| | | } |
| | | } |
| | | } |
| | | |
| | | public override ImageSet Snapshot(IOperationConfig config) |
| | | { |
| | | ImageSet imgSet = base.Snapshot(config); |
| | | |
| | | return imgSet; |
| | | } |
| | | |
| | | |
| | | float _currentExposure = 0; |
| | | string _currentJob = ""; |
| | | public override void UploadOperationConfig(IOperationConfig config) |
| | | { |
| | | throw new NotImplementedException(); |
| | | if (config is GocatorOperationConfig opConfig) |
| | | { |
| | | if (opConfig.Exposure > 0 && opConfig.Exposure != _currentExposure) |
| | | { |
| | | sensor.Setup.SetExposure(GoRole.Main, opConfig.Exposure); |
| | | _currentExposure = opConfig.Exposure; |
| | | } |
| | | |
| | | if (!string.IsNullOrWhiteSpace(opConfig.JobName) && _currentJob != opConfig.JobName) |
| | | { |
| | | _currentJob = sensor.DefaultJob = opConfig.JobName; |
| | | } |
| | | |
| | | sensor.Flush(); |
| | | } |
| | | } |
| | | |
| | | protected override void Init() |
| | | { |
| | | throw new NotImplementedException(); |
| | | KApiLib.Construct(); |
| | | GoSdkLib.Construct(); |
| | | |
| | | system = new GoSystem(); |
| | | |
| | | if (IIConfig.IsUseAccelerator) |
| | | { |
| | | accelerator = new GoAccelerator(); |
| | | } |
| | | |
| | | KIpAddress ip = KIpAddress.Parse(IConfig.CameraIP); |
| | | |
| | | if (IIConfig.IsUseAccelerator) |
| | | { |
| | | accelerator.Start(); |
| | | } |
| | | |
| | | sensor = system.FindSensorByIpAddress(ip); |
| | | |
| | | if (IIConfig.IsUseAccelerator) |
| | | { |
| | | accelerator.Attach(sensor); |
| | | } |
| | | sensor.Connect(); |
| | | |
| | | if (IIConfig.IsUseAccelerator) |
| | | { |
| | | sensor.Flush(); |
| | | accelerator.Start(); |
| | | } |
| | | |
| | | sensor.Setup.ScanMode = GoMode.Surface; |
| | | |
| | | system.EnableData(true); |
| | | |
| | | if (IIConfig.IsAsyncMode) |
| | | { |
| | | system.SetDataHandler(onData); |
| | | } |
| | | |
| | | _currentExposure = (float)sensor.Setup.GetExposure(GoRole.Main); |
| | | if (IIConfig.DefaultExposure > 0 && _currentExposure != IIConfig.DefaultExposure) |
| | | { |
| | | sensor.Setup.SetExposure(GoRole.Main, IIConfig.DefaultExposure); |
| | | _currentExposure = (float)sensor.Setup.GetExposure(GoRole.Main); |
| | | } |
| | | |
| | | _currentJob = sensor.DefaultJob; |
| | | if (!string.IsNullOrWhiteSpace(IIConfig.DefaultJob) && _currentJob != IIConfig.DefaultJob) |
| | | { |
| | | _currentJob = sensor.DefaultJob = IIConfig.DefaultJob; |
| | | } |
| | | |
| | | sensor.Flush(); |
| | | } |
| | | |
| | | protected override void Start() |
| | | { |
| | | base.Start(); |
| | | |
| | | if (IIConfig.IsAsyncMode) |
| | | system.Start(); |
| | | } |
| | | |
| | | protected override void Stop() |
| | | { |
| | | base.Stop(); |
| | | |
| | | if (IIConfig.IsAsyncMode) |
| | | system.Stop(); |
| | | |
| | | if (IIConfig.IsUseAccelerator) |
| | | { |
| | | accelerator.Stop(); |
| | | } |
| | | |
| | | sensor.Disconnect(); |
| | | } |
| | | |
| | | protected override void Pause() |
| | | { |
| | | throw new NotImplementedException(); |
| | | } |
| | | |
| | | protected override void Resume() |
| | | { |
| | | throw new NotImplementedException(); |
| | | } |
| | | #endregion |
| | | |
| | | GoSystem system = null; |
| | | GoAccelerator accelerator = null; |
| | | GoSensor sensor = null; |
| | | |
| | | public GocatorInitialConfig IIConfig |
| | | { |
| | | get => InitialConfig as GocatorInitialConfig; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 异步模式获取数据 |
| | | /// </summary> |
| | | /// <param name="data"></param> |
| | | private void onData(KObject data) |
| | | { |
| | | GoDataSet dataSet = (GoDataSet)data; |
| | | } |
| | | } |
| | | } |
| | |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <WarningLevel>4</WarningLevel> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|AnyCPU'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <AllowUnsafeBlocks>true</AllowUnsafeBlocks> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>AnyCPU</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>..\Debug\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <AllowUnsafeBlocks>true</AllowUnsafeBlocks> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> |
| | | <OutputPath>bin\x64\Release\</OutputPath> |
| | | <DefineConstants>TRACE</DefineConstants> |
| | | <Optimize>true</Optimize> |
| | | <DebugType>pdbonly</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\x64\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <AllowUnsafeBlocks>true</AllowUnsafeBlocks> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <ItemGroup> |
| | | <Reference Include="halcondotnet, Version=12.0.0.0, Culture=neutral, PublicKeyToken=4973bed59ddbf2b8, processorArchitecture=MSIL"> |
| | | <SpecificVersion>False</SpecificVersion> |
| | |
| | | NewImageSet(set); |
| | | OnHImageOutput?.BeginInvoke(this, hImage, set.Id, null, null); |
| | | |
| | | HikToBitmap(nWidth, nHeight, pData, set.Id); |
| | | Generate8GrayImageByPointer(nWidth, nHeight, pData, set.Id); |
| | | } |
| | | else |
| | | { |
| | |
| | | uint nHeight = pFrameInfo.nHeight; |
| | | |
| | | //HikToBitmap(pFrameInfo, frameInfo.pBufAddr); |
| | | HikToBitmap((int)nWidth, (int)nHeight, frameInfo.pBufAddr, ""); |
| | | Generate8GrayImageByPointer((int)nWidth, (int)nHeight, frameInfo.pBufAddr, ""); |
| | | } |
| | | } |
| | | } |
| | |
| | | |
| | | set.HImage = hImage; |
| | | |
| | | HikToBitmap((int)nWidth, (int)nHeight, frameInfo.pBufAddr, set.Id); |
| | | Generate8GrayImageByPointer((int)nWidth, (int)nHeight, frameInfo.pBufAddr, set.Id); |
| | | return set; |
| | | } |
| | | } |
| | | } |
| | | |
| | | throw new Exception($"Grap Image Failed:{nRet:x8}"); |
| | | } |
| | | |
| | | [DllImport("kernel32.dll", EntryPoint = "CopyMemory", SetLastError = false)] |
| | | public static extern void CopyMemory(IntPtr dest, IntPtr src, uint count); |
| | | |
| | | private async void HikToBitmap(int width, int height, IntPtr dataPtr, string imgSetId) |
| | | { |
| | | await Task.Run(() => |
| | | { |
| | | //************************Mono8 转 Bitmap******************************* |
| | | Bitmap bmp = new Bitmap(width, height, PixelFormat.Format8bppIndexed); |
| | | Bitmap showImage = new Bitmap(width, height, PixelFormat.Format8bppIndexed); |
| | | |
| | | ColorPalette cp = bmp.Palette; |
| | | for (int i = 0; i < 256; i++) |
| | | { |
| | | cp.Entries[i] = Color.FromArgb(i, i, i); |
| | | } |
| | | bmp.Palette = cp; |
| | | |
| | | ColorPalette cp1 = showImage.Palette; |
| | | for (int i = 0; i < 256; i++) |
| | | { |
| | | cp1.Entries[i] = Color.FromArgb(i, i, i); |
| | | } |
| | | showImage.Palette = cp1; |
| | | |
| | | int[] ptr = new int[3]; |
| | | Rectangle rect = new Rectangle(0, 0, width, height); |
| | | BitmapData bitmapData = bmp.LockBits(rect, ImageLockMode.WriteOnly, PixelFormat.Format8bppIndexed); |
| | | BitmapData showImageData = showImage.LockBits(rect, ImageLockMode.WriteOnly, PixelFormat.Format8bppIndexed); |
| | | int PixelSize = Bitmap.GetPixelFormatSize(bitmapData.PixelFormat) / 8; |
| | | |
| | | if (width % 4 == 0) |
| | | { |
| | | CopyMemory(bitmapData.Scan0, dataPtr, (uint)(width * height * PixelSize)); |
| | | CopyMemory(showImageData.Scan0, dataPtr, (uint)(width * height * PixelSize)); |
| | | } |
| | | else |
| | | { |
| | | ptr[0] = bitmapData.Scan0.ToInt32(); |
| | | ptr[1] = showImageData.Scan0.ToInt32(); |
| | | ptr[2] = (int)dataPtr; |
| | | for (int i = 0; i < height - 1; i++) |
| | | { |
| | | ptr[2] += width; |
| | | |
| | | CopyMemory((IntPtr)ptr[0], (IntPtr)ptr[2], (uint)(width * PixelSize)); |
| | | CopyMemory((IntPtr)ptr[1], (IntPtr)ptr[2], (uint)(width * PixelSize)); |
| | | ptr[0] += bitmapData.Stride; |
| | | ptr[1] += showImageData.Stride; |
| | | } |
| | | } |
| | | bmp.UnlockBits(bitmapData); |
| | | showImage.UnlockBits(showImageData); |
| | | |
| | | SaveOriginImage(bmp, showImage, imgSetId); |
| | | }); |
| | | } |
| | | |
| | | readonly MyCamera device = new MyCamera(); |
| | |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <WarningLevel>4</WarningLevel> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|AnyCPU'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>AnyCPU</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>..\Debug\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> |
| | | <OutputPath>bin\x64\Release\</OutputPath> |
| | | <DefineConstants>TRACE</DefineConstants> |
| | | <Optimize>true</Optimize> |
| | | <DebugType>pdbonly</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\x64\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <ItemGroup> |
| | | <Reference Include="System" /> |
| | | <Reference Include="System.Core" /> |
| | |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <WarningLevel>4</WarningLevel> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|AnyCPU'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>AnyCPU</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\x64\Debug\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> |
| | | <OutputPath>bin\x64\Release\</OutputPath> |
| | | <DefineConstants>TRACE</DefineConstants> |
| | | <Optimize>true</Optimize> |
| | | <DebugType>pdbonly</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\x64\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <ItemGroup> |
| | | <Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"> |
| | | <HintPath>..\..\packages\EntityFramework.6.4.0\lib\net45\EntityFramework.dll</HintPath> |
| | |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <WarningLevel>4</WarningLevel> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|AnyCPU'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>AnyCPU</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\x64\Debug\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> |
| | | <OutputPath>bin\x64\Release\</OutputPath> |
| | | <DefineConstants>TRACE</DefineConstants> |
| | | <Optimize>true</Optimize> |
| | | <DebugType>pdbonly</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\x64\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <ItemGroup> |
| | | <Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"> |
| | | <HintPath>..\..\packages\EntityFramework.6.4.0\lib\net45\EntityFramework.dll</HintPath> |
| | |
| | | <PropertyGroup> |
| | | <StartupObject /> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|AnyCPU'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>AnyCPU</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>..\Debug\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> |
| | | <OutputPath>bin\x64\Release\</OutputPath> |
| | | <DefineConstants>TRACE</DefineConstants> |
| | | <Optimize>true</Optimize> |
| | | <DebugType>pdbonly</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\x64\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <ItemGroup> |
| | | <Reference Include="Autofac, Version=4.9.4.0, Culture=neutral, PublicKeyToken=17863af14b0044da, processorArchitecture=MSIL"> |
| | | <HintPath>..\..\packages\Autofac.4.9.4\lib\net45\Autofac.dll</HintPath> |
| | |
| | | <Reference Include="System.Net.Http" /> |
| | | <Reference Include="System.Windows.Forms" /> |
| | | <Reference Include="System.Xml" /> |
| | | <Reference Include="WeifenLuo.WinFormsUI.Docking, Version=3.0.6.0, Culture=neutral, PublicKeyToken=5cded1a1a0a7b481, processorArchitecture=MSIL"> |
| | | <HintPath>..\..\packages\DockPanelSuite.3.0.6\lib\net40\WeifenLuo.WinFormsUI.Docking.dll</HintPath> |
| | | </Reference> |
| | | </ItemGroup> |
| | | <ItemGroup> |
| | | <Compile Include="M071Converters.cs" /> |
| | |
| | | <Compile Include="M071Models.cs" /> |
| | | <Compile Include="M071Process.cs" /> |
| | | <Compile Include="Properties\AssemblyInfo.cs" /> |
| | | <Compile Include="UI\M071Node.cs" /> |
| | | <Compile Include="UI\M071_MainForm.cs"> |
| | | <SubType>Form</SubType> |
| | | </Compile> |
| | | <Compile Include="UI\M071_MainForm.Designer.cs"> |
| | | <DependentUpon>M071_MainForm.cs</DependentUpon> |
| | | </Compile> |
| | | <EmbeddedResource Include="Properties\Resources.resx"> |
| | | <Generator>ResXFileCodeGenerator</Generator> |
| | | <LastGenOutput>Resources.Designer.cs</LastGenOutput> |
| | |
| | | <Project>{197C5AA8-9609-4D1C-B1E3-5879006EAAF4}</Project> |
| | | <Name>Bro.Process</Name> |
| | | </ProjectReference> |
| | | <ProjectReference Include="..\Bro.UI.Model.Winform\Bro.UI.Model.Winform.csproj"> |
| | | <Project>{741F6491-57C7-479A-B391-09BBA9FBA9DC}</Project> |
| | | <Name>Bro.UI.Model.Winform</Name> |
| | | </ProjectReference> |
| | | </ItemGroup> |
| | | <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> |
| | | </Project> |
| | |
| | | using System.IO; |
| | | using System.Linq; |
| | | using System.Text; |
| | | using System.Threading; |
| | | using System.Threading.Tasks; |
| | | |
| | | namespace Bro.M071.Process |
| | |
| | | //} |
| | | #endregion |
| | | |
| | | //Dictionary<string, ProductionMeasurement> MeasureDict = new Dictionary<string, ProductionMeasurement>(); |
| | | |
| | | private string barCode = ""; |
| | | public string BarCode |
| | | { |
| | |
| | | measurements.ForEach(m => |
| | | { |
| | | m.InitialKeyUnitMeasureChanged(); |
| | | //m.KeyUnitCollection.ForEach(k => k.InitialMeasureValueDictPropertyChanged()); |
| | | }); |
| | | |
| | | //MeasureDict[BarCode] = new ProductionMeasurement() |
| | | //{ |
| | | // Barcode = BarCode, |
| | | // Measurements = measurements, |
| | | //}; |
| | | |
| | | //MeasureDict[BarCode].InitialMeasurementsPropertyChanged(); |
| | | //MeasureDict[BarCode].PropertyChanged += MeasureProduction_PropertyChanged; |
| | | |
| | | var pMeasure = new ProductionMeasurement() |
| | | { |
| | |
| | | |
| | | Config.SnapshotPointCollection.Where(u => u.IsEnabled).ToList().ForEach(s => |
| | | { |
| | | _pauseHandle.WaitHandle.WaitOne(); |
| | | |
| | | IDevice device = DeviceCollection.FirstOrDefault(u => u.Id == s.MotionDevice); |
| | | if (device == null) |
| | | throw new ProcessException($"{s.Name}拍照点位未设置运动设备"); |
| | |
| | | return new ProcessResponse(true); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 暂停标志 |
| | | /// WaitHandle 暂停句柄 默认为非阻塞 可执行 |
| | | /// WaitResult 暂停标志 true 正常执行 false 暂停中 |
| | | /// </summary> |
| | | ManualWaitConfirm _pauseHandle = new ManualWaitConfirm() |
| | | { |
| | | WaitHandle = new ManualResetEvent(true), |
| | | WaitResult = true, |
| | | }; |
| | | |
| | | [ProcessMethod("", "PauseJob", "暂停流程", InvokeType.TestInvoke)] |
| | | public ProcessResponse PauseJob(IOperationConfig opConfig, IDevice invokeDevice, IDevice sourceDevice) |
| | | { |
| | | if (_pauseHandle.WaitResult) |
| | | { |
| | | #region 板卡暂停动作 |
| | | #endregion |
| | | |
| | | _pauseHandle.WaitHandle.Reset(); |
| | | } |
| | | else |
| | | { |
| | | #region 板卡恢复动作 |
| | | #endregion |
| | | |
| | | _pauseHandle.WaitHandle.Set(); |
| | | } |
| | | |
| | | _pauseHandle.WaitResult = !_pauseHandle.WaitResult; |
| | | return new ProcessResponse(_pauseHandle.WaitResult); |
| | | } |
| | | #region 私有方法 |
| | | private void MeasureProduction_PropertyChanged(object sender, PropertyChangedEventArgs e) |
| | | { |
| | | if (sender is ProductionMeasurement pMeasure) |
| | |
| | | imgSet.HImage.Dispose(); |
| | | }); |
| | | } |
| | | #endregion |
| | | } |
| | | } |
New file |
| | |
| | | using Bro.Common.Interface; |
| | | using Bro.UI.Model.Winform; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | |
| | | namespace Bro.M071.Process.UI |
| | | { |
| | | [MenuNode("M071Node", "键盘检测", 3, "", false)] |
| | | public class M071Node : IMenuNode |
| | | { |
| | | } |
| | | } |
New file |
| | |
| | | namespace Bro.M071.Process.UI |
| | | { |
| | | partial class M071_MainForm |
| | | { |
| | | /// <summary> |
| | | /// Required designer variable. |
| | | /// </summary> |
| | | private System.ComponentModel.IContainer components = null; |
| | | |
| | | /// <summary> |
| | | /// Clean up any resources being used. |
| | | /// </summary> |
| | | /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> |
| | | protected override void Dispose(bool disposing) |
| | | { |
| | | if (disposing && (components != null)) |
| | | { |
| | | components.Dispose(); |
| | | } |
| | | base.Dispose(disposing); |
| | | } |
| | | |
| | | #region Windows Form Designer generated code |
| | | |
| | | /// <summary> |
| | | /// Required method for Designer support - do not modify |
| | | /// the contents of this method with the code editor. |
| | | /// </summary> |
| | | private void InitializeComponent() |
| | | { |
| | | this.components = new System.ComponentModel.Container(); |
| | | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; |
| | | this.ClientSize = new System.Drawing.Size(800, 450); |
| | | this.Text = "M071_MainForm"; |
| | | } |
| | | |
| | | #endregion |
| | | } |
| | | } |
New file |
| | |
| | | using Bro.UI.Model.Winform; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.ComponentModel; |
| | | using System.Data; |
| | | using System.Drawing; |
| | | using System.Linq; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using System.Windows.Forms; |
| | | |
| | | namespace Bro.M071.Process.UI |
| | | { |
| | | [MenuNode("M071_MainForm", "键盘检测主界面", 3, "M071Node", true)] |
| | | public partial class M071_MainForm : MenuFrmBase |
| | | { |
| | | public M071_MainForm() |
| | | { |
| | | InitializeComponent(); |
| | | } |
| | | } |
| | | } |
| | |
| | | <?xml version="1.0" encoding="utf-8"?> |
| | | <packages> |
| | | <package id="Autofac" version="4.9.4" targetFramework="net452" /> |
| | | <package id="DockPanelSuite" version="3.0.6" targetFramework="net452" /> |
| | | <package id="Newtonsoft.Json" version="11.0.2" targetFramework="net452" /> |
| | | <package id="WeifenLuo.WinFormsUI.Docking" version="2.1.0" targetFramework="net452" /> |
| | | </packages> |
| | |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <WarningLevel>4</WarningLevel> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|AnyCPU'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>AnyCPU</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\x64\Debug\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> |
| | | <OutputPath>bin\x64\Release\</OutputPath> |
| | | <DefineConstants>TRACE</DefineConstants> |
| | | <Optimize>true</Optimize> |
| | | <DebugType>pdbonly</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\x64\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <ItemGroup> |
| | | <Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL"> |
| | | <HintPath>..\..\packages\EntityFramework.6.4.0\lib\net45\EntityFramework.dll</HintPath> |
| | |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <WarningLevel>4</WarningLevel> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|AnyCPU'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>AnyCPU</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>..\Debug\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> |
| | | <OutputPath>bin\x64\Release\</OutputPath> |
| | | <DefineConstants>TRACE</DefineConstants> |
| | | <Optimize>true</Optimize> |
| | | <DebugType>pdbonly</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\x64\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <ItemGroup> |
| | | <Reference Include="Autofac, Version=4.9.4.0, Culture=neutral, PublicKeyToken=17863af14b0044da, processorArchitecture=MSIL"> |
| | | <HintPath>..\..\packages\Autofac.4.9.4\lib\net45\Autofac.dll</HintPath> |
| | |
| | | <?xml version="1.0" encoding="utf-8" ?> |
| | | <?xml version="1.0" encoding="utf-8"?> |
| | | <configuration> |
| | | <startup> |
| | | <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" /> |
| | | </startup> |
| | | <startup> |
| | | <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" /> |
| | | </startup> |
| | | <appSettings> |
| | | <add key="AuthorityCheck" value="False"/> |
| | | <add key="AuthorityServer" value="192.168.1.255:11001"/> |
| | | <add key="AuthorityCheck" value="False" /> |
| | | <add key="AuthorityServer" value="192.168.1.255:11001" /> |
| | | <add key="ClientSettingsProvider.ServiceUri" value="" /> |
| | | </appSettings> |
| | | <system.web> |
| | | <membership defaultProvider="ClientAuthenticationMembershipProvider"> |
| | | <providers> |
| | | <add name="ClientAuthenticationMembershipProvider" type="System.Web.ClientServices.Providers.ClientFormsAuthenticationMembershipProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" /> |
| | | </providers> |
| | | </membership> |
| | | <roleManager defaultProvider="ClientRoleProvider" enabled="true"> |
| | | <providers> |
| | | <add name="ClientRoleProvider" type="System.Web.ClientServices.Providers.ClientRoleProvider, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" cacheTimeout="86400" /> |
| | | </providers> |
| | | </roleManager> |
| | | </system.web> |
| | | </configuration> |
| | |
| | | <FileAlignment>512</FileAlignment> |
| | | <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> |
| | | <Deterministic>true</Deterministic> |
| | | <IsWebBootstrapper>false</IsWebBootstrapper> |
| | | <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> |
| | | <UseApplicationTrust>false</UseApplicationTrust> |
| | | <BootstrapperEnabled>true</BootstrapperEnabled> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> |
| | | <PlatformTarget>AnyCPU</PlatformTarget> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <DebugType>full</DebugType> |
| | | <Optimize>false</Optimize> |
| | | <OutputPath>..\Debug\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <WarningLevel>4</WarningLevel> |
| | | <WarningLevel>2</WarningLevel> |
| | | <Prefer32Bit>false</Prefer32Bit> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> |
| | |
| | | </PropertyGroup> |
| | | <PropertyGroup> |
| | | <ApplicationIcon>Logo.ico</ApplicationIcon> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|AnyCPU'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <WarningLevel>2</WarningLevel> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>..\Debug\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <WarningLevel>2</WarningLevel> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> |
| | | <OutputPath>bin\x64\Release\</OutputPath> |
| | | <DefineConstants>TRACE</DefineConstants> |
| | | <Optimize>true</Optimize> |
| | | <DebugType>pdbonly</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | <Prefer32Bit>true</Prefer32Bit> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\x64\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <WarningLevel>2</WarningLevel> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | <Prefer32Bit>true</Prefer32Bit> |
| | | </PropertyGroup> |
| | | <ItemGroup> |
| | | <Reference Include="Autofac, Version=4.9.4.0, Culture=neutral, PublicKeyToken=17863af14b0044da, processorArchitecture=MSIL"> |
| | |
| | | <Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL"> |
| | | <HintPath>..\..\packages\System.ValueTuple.4.5.0\lib\netstandard1.0\System.ValueTuple.dll</HintPath> |
| | | </Reference> |
| | | <Reference Include="System.Web.Extensions" /> |
| | | <Reference Include="System.Xml.Linq" /> |
| | | <Reference Include="System.Data.DataSetExtensions" /> |
| | | <Reference Include="Microsoft.CSharp" /> |
| | |
| | | <Content Include="Logo2.ico" /> |
| | | <None Include="Resources\load.bmp" /> |
| | | </ItemGroup> |
| | | <ItemGroup> |
| | | <BootstrapperPackage Include=".NETFramework,Version=v4.5.2"> |
| | | <Visible>False</Visible> |
| | | <ProductName>Microsoft .NET Framework 4.5.2 %28x86 和 x64%29</ProductName> |
| | | <Install>true</Install> |
| | | </BootstrapperPackage> |
| | | <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1"> |
| | | <Visible>False</Visible> |
| | | <ProductName>.NET Framework 3.5 SP1</ProductName> |
| | | <Install>false</Install> |
| | | </BootstrapperPackage> |
| | | </ItemGroup> |
| | | <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> |
| | | </Project> |
| | |
| | | |
| | | btnStart.Enabled = false; |
| | | |
| | | //Task.Run(() => |
| | | //{ |
| | | try |
| | | { |
| | | //if (Process.ProcessState != EnumHelper.DeviceState.DSOpen) |
| | | if(isStart) |
| | | if (isStart) |
| | | { |
| | | ProcessOperation(true); |
| | | } |
| | |
| | | } |
| | | finally |
| | | { |
| | | btnStart.Enabled = true; |
| | | this.BeginInvoke(new Action(() => btnStart.Enabled = true)); |
| | | } |
| | | //}); |
| | | } |
| | | |
| | | string _currentProcssCode = ""; |
| | |
| | | { |
| | | Process.Open(); |
| | | |
| | | //this.BeginInvoke(new Action(() => |
| | | //{ |
| | | btnStart.Text = " 停 止"; |
| | | btnStart.ImageIndex = 1; |
| | | btnStart.BackColor = Color.FromArgb(0x7f, Color.LimeGreen); |
| | | |
| | | btnLoad.Enabled = false; |
| | | //})); |
| | | |
| | | } |
| | | else |
| | | { |
| | | Process.Close(); |
| | | |
| | | //this.BeginInvoke(new Action(() => |
| | | //{ |
| | | btnStart.Text = " 启 动"; |
| | | btnStart.ImageIndex = 0; |
| | | btnStart.BackColor = SystemColors.Control; |
| | | |
| | | btnLoad.Enabled = true; |
| | | //})); |
| | | } |
| | | } |
| | | } |
| | |
| | | AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w |
| | | LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 |
| | | ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADm |
| | | CgAAAk1TRnQBSQFMAgEBAgEAAbgBAAG4AQABGAEAARgBAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo |
| | | CgAAAk1TRnQBSQFMAgEBAgEAAcABAAHAAQABGAEAARgBAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo |
| | | AwABYAMAARgDAAEBAQABCAYAAQkYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA |
| | | AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 |
| | | AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA |
| | |
| | | AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w |
| | | LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 |
| | | ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAD4 |
| | | CAAAAk1TRnQBSQFMAwEBAAG4AQABuAEAARgBAAEYAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA |
| | | CAAAAk1TRnQBSQFMAwEBAAHAAQABwAEAARgBAAEYAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA |
| | | AWADAAEYAwABAQEAAQgGAAEJGAABgAIAAYADAAKAAQABgAMAAYABAAGAAQACgAIAA8ABAAHAAdwBwAEA |
| | | AfABygGmAQABMwUAATMBAAEzAQABMwEAAjMCAAMWAQADHAEAAyIBAAMpAQADVQEAA00BAANCAQADOQEA |
| | | AYABfAH/AQACUAH/AQABkwEAAdYBAAH/AewBzAEAAcYB1gHvAQAB1gLnAQABkAGpAa0CAAH/ATMDAAFm |
| | |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <WarningLevel>4</WarningLevel> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|AnyCPU'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>AnyCPU</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>..\Debug\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> |
| | | <OutputPath>bin\x64\Release\</OutputPath> |
| | | <DefineConstants>TRACE</DefineConstants> |
| | | <Optimize>true</Optimize> |
| | | <DebugType>pdbonly</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\x64\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <ItemGroup> |
| | | <Reference Include="System" /> |
| | | <Reference Include="System.Core" /> |
| | |
| | | this.tssBtnCameraOp, |
| | | this.tsTxtExposure, |
| | | this.tsBtnModifyExposure}); |
| | | this.toolStripOperation.Location = new System.Drawing.Point(38, 0); |
| | | this.toolStripOperation.Location = new System.Drawing.Point(38, 2); |
| | | this.toolStripOperation.Name = "toolStripOperation"; |
| | | this.toolStripOperation.Size = new System.Drawing.Size(440, 25); |
| | | this.toolStripOperation.Size = new System.Drawing.Size(440, 28); |
| | | this.toolStripOperation.TabIndex = 0; |
| | | this.toolStripOperation.Text = "toolStrip1"; |
| | | // |
| | |
| | | this.tssBtnCameraOp.Image = ((System.Drawing.Image)(resources.GetObject("tssBtnCameraOp.Image"))); |
| | | this.tssBtnCameraOp.ImageTransparentColor = System.Drawing.Color.Magenta; |
| | | this.tssBtnCameraOp.Name = "tssBtnCameraOp"; |
| | | this.tssBtnCameraOp.Size = new System.Drawing.Size(64, 22); |
| | | this.tssBtnCameraOp.Size = new System.Drawing.Size(64, 25); |
| | | this.tssBtnCameraOp.Text = "拍 照"; |
| | | this.tssBtnCameraOp.ToolTipText = "相机模式"; |
| | | this.tssBtnCameraOp.DropDownClosed += new System.EventHandler(this.tssBtnCameraOp_DropDownClosed); |
| | |
| | | this.tsmiShowElements, |
| | | this.tsmiShowStatusBar}); |
| | | this.ctmsVisibleControl.Name = "ctmsVisibleControl"; |
| | | this.ctmsVisibleControl.Size = new System.Drawing.Size(181, 114); |
| | | this.ctmsVisibleControl.Size = new System.Drawing.Size(149, 92); |
| | | // |
| | | // tsmiShowToolBar |
| | | // |
| | | this.tsmiShowToolBar.CheckOnClick = true; |
| | | this.tsmiShowToolBar.Name = "tsmiShowToolBar"; |
| | | this.tsmiShowToolBar.Size = new System.Drawing.Size(180, 22); |
| | | this.tsmiShowToolBar.Size = new System.Drawing.Size(148, 22); |
| | | this.tsmiShowToolBar.Text = "显示工具栏"; |
| | | this.tsmiShowToolBar.CheckedChanged += new System.EventHandler(this.tsmiShowToolBar_CheckedChanged); |
| | | // |
| | |
| | | // |
| | | this.tsmiShowOpBar.CheckOnClick = true; |
| | | this.tsmiShowOpBar.Name = "tsmiShowOpBar"; |
| | | this.tsmiShowOpBar.Size = new System.Drawing.Size(180, 22); |
| | | this.tsmiShowOpBar.Size = new System.Drawing.Size(148, 22); |
| | | this.tsmiShowOpBar.Text = "显示操作栏"; |
| | | this.tsmiShowOpBar.CheckedChanged += new System.EventHandler(this.tsmiShowOpBar_CheckedChanged); |
| | | // |
| | |
| | | // |
| | | this.tsmiShowElements.CheckOnClick = true; |
| | | this.tsmiShowElements.Name = "tsmiShowElements"; |
| | | this.tsmiShowElements.Size = new System.Drawing.Size(180, 22); |
| | | this.tsmiShowElements.Size = new System.Drawing.Size(148, 22); |
| | | this.tsmiShowElements.Text = "显示基元列表"; |
| | | this.tsmiShowElements.CheckedChanged += new System.EventHandler(this.tsmiShowElements_CheckedChanged); |
| | | // |
| | |
| | | // |
| | | this.tsmiShowStatusBar.CheckOnClick = true; |
| | | this.tsmiShowStatusBar.Name = "tsmiShowStatusBar"; |
| | | this.tsmiShowStatusBar.Size = new System.Drawing.Size(180, 22); |
| | | this.tsmiShowStatusBar.Size = new System.Drawing.Size(148, 22); |
| | | this.tsmiShowStatusBar.Text = "显示状态栏"; |
| | | this.tsmiShowStatusBar.CheckedChanged += new System.EventHandler(this.tsmiShowStatusBar_CheckedChanged); |
| | | // |
| | |
| | | IsShowStatusBar = tsmiShowStatusBar.Checked; |
| | | } |
| | | #endregion |
| | | |
| | | public IOperationConfig OpConfig { get; set; } |
| | | |
| | | public void UploadOperationConfig(IOperationConfig opConfig) |
| | | { |
| | | throw new NotImplementedException(); |
| | | } |
| | | |
| | | public IOperationConfig GetOperationConfig() |
| | | { |
| | | throw new NotImplementedException(); |
| | | } |
| | | } |
| | | } |
| | |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <WarningLevel>4</WarningLevel> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|AnyCPU'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>AnyCPU</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>..\Debug\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> |
| | | <OutputPath>bin\x64\Release\</OutputPath> |
| | | <DefineConstants>TRACE</DefineConstants> |
| | | <Optimize>true</Optimize> |
| | | <DebugType>pdbonly</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug1|x64'"> |
| | | <DebugSymbols>true</DebugSymbols> |
| | | <OutputPath>bin\x64\Debug1\</OutputPath> |
| | | <DefineConstants>DEBUG;TRACE</DefineConstants> |
| | | <DebugType>full</DebugType> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <LangVersion>7.3</LangVersion> |
| | | <ErrorReport>prompt</ErrorReport> |
| | | <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet> |
| | | </PropertyGroup> |
| | | <ItemGroup> |
| | | <Reference Include="Newtonsoft.Json, Version=11.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL"> |
| | | <HintPath>..\..\packages\Newtonsoft.Json.11.0.2\lib\net45\Newtonsoft.Json.dll</HintPath> |
New file |
| | |
| | | <?xml version="1.0" encoding="utf-8" ?> |
| | | <configuration> |
| | | <startup> |
| | | <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" /> |
| | | </startup> |
| | | </configuration> |
New file |
| | |
| | | namespace GocatorTest |
| | | { |
| | | partial class Form1 |
| | | { |
| | | /// <summary> |
| | | /// 必需的设计器变量。 |
| | | /// </summary> |
| | | private System.ComponentModel.IContainer components = null; |
| | | |
| | | /// <summary> |
| | | /// 清理所有正在使用的资源。 |
| | | /// </summary> |
| | | /// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param> |
| | | protected override void Dispose(bool disposing) |
| | | { |
| | | if (disposing && (components != null)) |
| | | { |
| | | components.Dispose(); |
| | | } |
| | | base.Dispose(disposing); |
| | | } |
| | | |
| | | #region Windows 窗体设计器生成的代码 |
| | | |
| | | /// <summary> |
| | | /// 设计器支持所需的方法 - 不要修改 |
| | | /// 使用代码编辑器修改此方法的内容。 |
| | | /// </summary> |
| | | private void InitializeComponent() |
| | | { |
| | | this.button1 = new System.Windows.Forms.Button(); |
| | | this.SuspendLayout(); |
| | | // |
| | | // button1 |
| | | // |
| | | this.button1.Location = new System.Drawing.Point(13, 50); |
| | | this.button1.Name = "button1"; |
| | | this.button1.Size = new System.Drawing.Size(75, 23); |
| | | this.button1.TabIndex = 0; |
| | | this.button1.Text = "button1"; |
| | | this.button1.UseVisualStyleBackColor = true; |
| | | this.button1.Click += new System.EventHandler(this.button1_Click); |
| | | // |
| | | // Form1 |
| | | // |
| | | this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); |
| | | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; |
| | | this.ClientSize = new System.Drawing.Size(498, 450); |
| | | this.Controls.Add(this.button1); |
| | | this.Name = "Form1"; |
| | | this.Text = "Form1"; |
| | | this.ResumeLayout(false); |
| | | |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | private System.Windows.Forms.Button button1; |
| | | } |
| | | } |
| | | |
New file |
| | |
| | | using Bro.Common.Base; |
| | | using Bro.Device.Gocator; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.ComponentModel; |
| | | using System.Data; |
| | | using System.Drawing; |
| | | using System.Linq; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using System.Windows.Forms; |
| | | |
| | | namespace GocatorTest |
| | | { |
| | | public partial class Form1 : Form |
| | | { |
| | | public Form1() |
| | | { |
| | | InitializeComponent(); |
| | | } |
| | | |
| | | private void button1_Click(object sender, EventArgs e) |
| | | { |
| | | GocatorDriver gocator = new GocatorDriver(); |
| | | |
| | | (gocator as DeviceBase).InitialConfig = new GocatorInitialConfig() |
| | | { |
| | | CameraIP="127.0.0.1" |
| | | }; |
| | | |
| | | gocator.StateChange(Bro.Common.Helper.EnumHelper.DeviceState.DSInit); |
| | | gocator.StateChange(Bro.Common.Helper.EnumHelper.DeviceState.DSOpen); |
| | | } |
| | | } |
| | | } |
New file |
| | |
| | | <?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.Runtime.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:import namespace="http://www.w3.org/XML/1998/namespace" /> |
| | | <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" use="required" type="xsd:string" /> |
| | | <xsd:attribute name="type" type="xsd:string" /> |
| | | <xsd:attribute name="mimetype" type="xsd:string" /> |
| | | <xsd:attribute ref="xml:space" /> |
| | | </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" use="required" msdata:Ordinal="1" /> |
| | | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> |
| | | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> |
| | | <xsd:attribute ref="xml:space" /> |
| | | </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=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> |
| | | </resheader> |
| | | <resheader name="writer"> |
| | | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> |
| | | </resheader> |
| | | </root> |
New file |
| | |
| | | <?xml version="1.0" encoding="utf-8"?> |
| | | <Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| | | <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" /> |
| | | <PropertyGroup> |
| | | <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> |
| | | <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> |
| | | <ProjectGuid>{CD0809C4-6E03-4F04-8806-59C29A4C54CE}</ProjectGuid> |
| | | <OutputType>WinExe</OutputType> |
| | | <RootNamespace>GocatorTest</RootNamespace> |
| | | <AssemblyName>GocatorTest</AssemblyName> |
| | | <TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion> |
| | | <FileAlignment>512</FileAlignment> |
| | | <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> |
| | | <Deterministic>true</Deterministic> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'"> |
| | | <PlatformTarget>AnyCPU</PlatformTarget> |
| | | <OutputPath>bin\Debug\</OutputPath> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'"> |
| | | <PlatformTarget>AnyCPU</PlatformTarget> |
| | | <OutputPath>bin\Release\</OutputPath> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'"> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <OutputPath>bin\x64\Debug\</OutputPath> |
| | | </PropertyGroup> |
| | | <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'"> |
| | | <PlatformTarget>x64</PlatformTarget> |
| | | <OutputPath>bin\x64\Release\</OutputPath> |
| | | </PropertyGroup> |
| | | <ItemGroup> |
| | | <Reference Include="System" /> |
| | | <Reference Include="System.Core" /> |
| | | <Reference Include="System.Xml.Linq" /> |
| | | <Reference Include="System.Data.DataSetExtensions" /> |
| | | <Reference Include="Microsoft.CSharp" /> |
| | | <Reference Include="System.Data" /> |
| | | <Reference Include="System.Deployment" /> |
| | | <Reference Include="System.Drawing" /> |
| | | <Reference Include="System.Net.Http" /> |
| | | <Reference Include="System.Windows.Forms" /> |
| | | <Reference Include="System.Xml" /> |
| | | </ItemGroup> |
| | | <ItemGroup> |
| | | <Compile Include="Form1.cs"> |
| | | <SubType>Form</SubType> |
| | | </Compile> |
| | | <Compile Include="Form1.Designer.cs"> |
| | | <DependentUpon>Form1.cs</DependentUpon> |
| | | </Compile> |
| | | <Compile Include="Program.cs" /> |
| | | <Compile Include="Properties\AssemblyInfo.cs" /> |
| | | <EmbeddedResource Include="Form1.resx"> |
| | | <DependentUpon>Form1.cs</DependentUpon> |
| | | </EmbeddedResource> |
| | | <EmbeddedResource Include="Properties\Resources.resx"> |
| | | <Generator>ResXFileCodeGenerator</Generator> |
| | | <LastGenOutput>Resources.Designer.cs</LastGenOutput> |
| | | <SubType>Designer</SubType> |
| | | </EmbeddedResource> |
| | | <Compile Include="Properties\Resources.Designer.cs"> |
| | | <AutoGen>True</AutoGen> |
| | | <DependentUpon>Resources.resx</DependentUpon> |
| | | </Compile> |
| | | <None Include="Properties\Settings.settings"> |
| | | <Generator>SettingsSingleFileGenerator</Generator> |
| | | <LastGenOutput>Settings.Designer.cs</LastGenOutput> |
| | | </None> |
| | | <Compile Include="Properties\Settings.Designer.cs"> |
| | | <AutoGen>True</AutoGen> |
| | | <DependentUpon>Settings.settings</DependentUpon> |
| | | <DesignTimeSharedInput>True</DesignTimeSharedInput> |
| | | </Compile> |
| | | </ItemGroup> |
| | | <ItemGroup> |
| | | <None Include="App.config" /> |
| | | </ItemGroup> |
| | | <ItemGroup> |
| | | <ProjectReference Include="..\Bro.Common.Device\Bro.Common.Device.csproj"> |
| | | <Project>{987308DD-8BAA-463A-94E2-77D62E01A5BF}</Project> |
| | | <Name>Bro.Common.Device</Name> |
| | | </ProjectReference> |
| | | <ProjectReference Include="..\Bro.Common.Model\Bro.Common.Model.csproj"> |
| | | <Project>{1A3CBFE7-3F78-42C3-95C5-10360450DBEA}</Project> |
| | | <Name>Bro.Common.Model</Name> |
| | | </ProjectReference> |
| | | <ProjectReference Include="..\Bro.Device.Gocator\Bro.Device.Gocator.csproj"> |
| | | <Project>{112009f0-7902-454b-9a6c-a3afc8fa8fff}</Project> |
| | | <Name>Bro.Device.Gocator</Name> |
| | | </ProjectReference> |
| | | </ItemGroup> |
| | | <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> |
| | | </Project> |
New file |
| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Linq; |
| | | using System.Threading.Tasks; |
| | | using System.Windows.Forms; |
| | | |
| | | namespace GocatorTest |
| | | { |
| | | static class Program |
| | | { |
| | | /// <summary> |
| | | /// 应用程序的主入口点。 |
| | | /// </summary> |
| | | [STAThread] |
| | | static void Main() |
| | | { |
| | | Application.EnableVisualStyles(); |
| | | Application.SetCompatibleTextRenderingDefault(false); |
| | | Application.Run(new Form1()); |
| | | } |
| | | } |
| | | } |
New file |
| | |
| | | using System.Reflection; |
| | | using System.Runtime.CompilerServices; |
| | | using System.Runtime.InteropServices; |
| | | |
| | | // 有关程序集的一般信息由以下 |
| | | // 控制。更改这些特性值可修改 |
| | | // 与程序集关联的信息。 |
| | | [assembly: AssemblyTitle("GocatorTest")] |
| | | [assembly: AssemblyDescription("")] |
| | | [assembly: AssemblyConfiguration("")] |
| | | [assembly: AssemblyCompany("")] |
| | | [assembly: AssemblyProduct("GocatorTest")] |
| | | [assembly: AssemblyCopyright("Copyright © 2020")] |
| | | [assembly: AssemblyTrademark("")] |
| | | [assembly: AssemblyCulture("")] |
| | | |
| | | // 将 ComVisible 设置为 false 会使此程序集中的类型 |
| | | //对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型 |
| | | //请将此类型的 ComVisible 特性设置为 true。 |
| | | [assembly: ComVisible(false)] |
| | | |
| | | // 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID |
| | | [assembly: Guid("cd0809c4-6e03-4f04-8806-59c29a4c54ce")] |
| | | |
| | | // 程序集的版本信息由下列四个值组成: |
| | | // |
| | | // 主版本 |
| | | // 次版本 |
| | | // 生成号 |
| | | // 修订号 |
| | | // |
| | | //可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值 |
| | | //通过使用 "*",如下所示: |
| | | // [assembly: AssemblyVersion("1.0.*")] |
| | | [assembly: AssemblyVersion("1.0.0.0")] |
| | | [assembly: AssemblyFileVersion("1.0.0.0")] |
New file |
| | |
| | | //------------------------------------------------------------------------------ |
| | | // <auto-generated> |
| | | // 此代码由工具生成。 |
| | | // 运行时版本: 4.0.30319.42000 |
| | | // |
| | | // 对此文件的更改可能导致不正确的行为,如果 |
| | | // 重新生成代码,则所做更改将丢失。 |
| | | // </auto-generated> |
| | | //------------------------------------------------------------------------------ |
| | | |
| | | namespace GocatorTest.Properties |
| | | { |
| | | |
| | | |
| | | /// <summary> |
| | | /// 强类型资源类,用于查找本地化字符串等。 |
| | | /// </summary> |
| | | // 此类是由 StronglyTypedResourceBuilder |
| | | // 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。 |
| | | // 若要添加或删除成员,请编辑 .ResX 文件,然后重新运行 ResGen |
| | | // (以 /str 作为命令选项),或重新生成 VS 项目。 |
| | | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] |
| | | [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] |
| | | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] |
| | | internal class Resources |
| | | { |
| | | |
| | | private static global::System.Resources.ResourceManager resourceMan; |
| | | |
| | | private static global::System.Globalization.CultureInfo resourceCulture; |
| | | |
| | | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] |
| | | internal Resources() |
| | | { |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 返回此类使用的缓存 ResourceManager 实例。 |
| | | /// </summary> |
| | | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] |
| | | internal static global::System.Resources.ResourceManager ResourceManager |
| | | { |
| | | get |
| | | { |
| | | if ((resourceMan == null)) |
| | | { |
| | | global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("GocatorTest.Properties.Resources", typeof(Resources).Assembly); |
| | | resourceMan = temp; |
| | | } |
| | | return resourceMan; |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 覆盖当前线程的 CurrentUICulture 属性 |
| | | /// 使用此强类型的资源类的资源查找。 |
| | | /// </summary> |
| | | [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] |
| | | internal static global::System.Globalization.CultureInfo Culture |
| | | { |
| | | get |
| | | { |
| | | return resourceCulture; |
| | | } |
| | | set |
| | | { |
| | | resourceCulture = value; |
| | | } |
| | | } |
| | | } |
| | | } |
New file |
| | |
| | | <?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> |
New file |
| | |
| | | //------------------------------------------------------------------------------ |
| | | // <auto-generated> |
| | | // This code was generated by a tool. |
| | | // Runtime Version:4.0.30319.42000 |
| | | // |
| | | // Changes to this file may cause incorrect behavior and will be lost if |
| | | // the code is regenerated. |
| | | // </auto-generated> |
| | | //------------------------------------------------------------------------------ |
| | | |
| | | namespace GocatorTest.Properties |
| | | { |
| | | |
| | | |
| | | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] |
| | | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] |
| | | internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase |
| | | { |
| | | |
| | | private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); |
| | | |
| | | public static Settings Default |
| | | { |
| | | get |
| | | { |
| | | return defaultInstance; |
| | | } |
| | | } |
| | | } |
| | | } |
New file |
| | |
| | | <?xml version='1.0' encoding='utf-8'?> |
| | | <SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)"> |
| | | <Profiles> |
| | | <Profile Name="(Default)" /> |
| | | </Profiles> |
| | | <Settings /> |
| | | </SettingsFile> |