-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
8a00a44
commit 2f23bcb
Showing
287 changed files
with
737,970 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
|
||
Microsoft Visual Studio Solution File, Format Version 12.00 | ||
# Visual Studio Version 17 | ||
VisualStudioVersion = 17.9.34728.123 | ||
MinimumVisualStudioVersion = 10.0.40219.1 | ||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "KabisAPITest", "KabisAPITest\KabisAPITest.csproj", "{068599FB-E324-4A95-93C1-31B3716E2ECC}" | ||
EndProject | ||
Global | ||
GlobalSection(SolutionConfigurationPlatforms) = preSolution | ||
Debug|Any CPU = Debug|Any CPU | ||
Release|Any CPU = Release|Any CPU | ||
EndGlobalSection | ||
GlobalSection(ProjectConfigurationPlatforms) = postSolution | ||
{068599FB-E324-4A95-93C1-31B3716E2ECC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU | ||
{068599FB-E324-4A95-93C1-31B3716E2ECC}.Debug|Any CPU.Build.0 = Debug|Any CPU | ||
{068599FB-E324-4A95-93C1-31B3716E2ECC}.Release|Any CPU.ActiveCfg = Release|Any CPU | ||
{068599FB-E324-4A95-93C1-31B3716E2ECC}.Release|Any CPU.Build.0 = Release|Any CPU | ||
EndGlobalSection | ||
GlobalSection(SolutionProperties) = preSolution | ||
HideSolutionNode = FALSE | ||
EndGlobalSection | ||
GlobalSection(ExtensibilityGlobals) = postSolution | ||
SolutionGuid = {8ECDFEC9-DB5F-41AE-B8EC-B917A2A74008} | ||
EndGlobalSection | ||
EndGlobal |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
<?xml version="1.0" encoding="utf-8" ?> | ||
<configuration> | ||
<startup> | ||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" /> | ||
</startup> | ||
</configuration> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
<?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>{068599FB-E324-4A95-93C1-31B3716E2ECC}</ProjectGuid> | ||
<OutputType>Exe</OutputType> | ||
<RootNamespace>KabisAPITest</RootNamespace> | ||
<AssemblyName>KabisAPITest</AssemblyName> | ||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion> | ||
<FileAlignment>512</FileAlignment> | ||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> | ||
<Deterministic>true</Deterministic> | ||
</PropertyGroup> | ||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> | ||
<PlatformTarget>AnyCPU</PlatformTarget> | ||
<DebugSymbols>true</DebugSymbols> | ||
<DebugType>full</DebugType> | ||
<Optimize>false</Optimize> | ||
<OutputPath>bin\Debug\</OutputPath> | ||
<DefineConstants>DEBUG;TRACE</DefineConstants> | ||
<ErrorReport>prompt</ErrorReport> | ||
<WarningLevel>4</WarningLevel> | ||
<Prefer32Bit>true</Prefer32Bit> | ||
</PropertyGroup> | ||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> | ||
<PlatformTarget>AnyCPU</PlatformTarget> | ||
<DebugType>pdbonly</DebugType> | ||
<Optimize>true</Optimize> | ||
<OutputPath>bin\Release\</OutputPath> | ||
<DefineConstants>TRACE</DefineConstants> | ||
<ErrorReport>prompt</ErrorReport> | ||
<WarningLevel>4</WarningLevel> | ||
</PropertyGroup> | ||
<ItemGroup> | ||
<Reference Include="PresentationCore" /> | ||
<Reference Include="System" /> | ||
<Reference Include="System.ComponentModel.DataAnnotations" /> | ||
<Reference Include="System.configuration" /> | ||
<Reference Include="System.Core" /> | ||
<Reference Include="System.Numerics" /> | ||
<Reference Include="System.Security" /> | ||
<Reference Include="System.Xml.Linq" /> | ||
<Reference Include="System.Data.DataSetExtensions" /> | ||
<Reference Include="Microsoft.CSharp" /> | ||
<Reference Include="System.Data" /> | ||
<Reference Include="System.Net.Http" /> | ||
<Reference Include="System.Xml" /> | ||
<Reference Include="WindowsBase" /> | ||
</ItemGroup> | ||
<ItemGroup> | ||
<Compile Include="Program.cs" /> | ||
<Compile Include="Properties\AssemblyInfo.cs" /> | ||
</ItemGroup> | ||
<ItemGroup> | ||
<None Include="App.config" /> | ||
</ItemGroup> | ||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> | ||
</Project> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,92 @@ | ||
using System; | ||
using System.Text; | ||
using System.Runtime.InteropServices; | ||
|
||
namespace KabisAPITest | ||
{ | ||
internal class Program | ||
{ | ||
/* Тут находятся все функции экспорта, которые содержит библиотека kapi32.dll и kapi32u.dll */ | ||
|
||
[DllImport("kapi32u.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static IntPtr ScanForPass(string strAppName); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static string PtrToStr(IntPtr intPtr); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static bool OpenDataBase(string strDataBase, string strPassword); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static string EnumTables(); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static int GetTableCount(); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static string EnumFields(string strTable); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static int GetFieldCount(string strTable); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static string SelectAllFrom(string strTable, bool bOutput); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static string UnloadTable(string strTable, string strFile, int iType, bool bOutput); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static int GetTableRecords(string strTable); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static bool CloseDataBase(); | ||
|
||
static void Main(string[] args) | ||
{ | ||
Console.InputEncoding = Encoding.UTF8; | ||
Console.OutputEncoding = Encoding.UTF8; | ||
|
||
Repeat: | ||
|
||
if (OpenDataBase("C:\\KABIS\\Data\\Books.dbx", PtrToStr(ScanForPass("C:\\KABIS\\KABIS.EXE")))) | ||
{ | ||
Console.WriteLine("База данных была успешно открыта!"); | ||
string strTables = EnumTables(); | ||
|
||
if (!string.IsNullOrEmpty(strTables)) | ||
{ | ||
Console.WriteLine(strTables); | ||
Console.Write("\nУкажите наименование таблицы для выгрузки: "); | ||
|
||
string strTable = Console.ReadLine(); | ||
int iRecords = GetTableRecords(strTable); | ||
|
||
if (iRecords != -1) | ||
Console.WriteLine("Количество записей в указанной таблице: {0}", iRecords); | ||
|
||
if (!string.IsNullOrEmpty(UnloadTable(strTable, (strTable + ".txt"), 2, false))) | ||
Console.WriteLine("Таблица \"{0}\" была успешно выгружена!", strTable); | ||
else | ||
Console.WriteLine("Не удалось выгрузить таблицу \"{0}\"", strTable); | ||
} | ||
else | ||
Console.WriteLine("Не получить перечень таблиц в базе данных."); | ||
|
||
if (CloseDataBase()) | ||
Console.WriteLine("Соединение с базой данных было закрыто."); | ||
} | ||
else | ||
Console.WriteLine("Не удалось открыть базу данных."); | ||
|
||
Console.WriteLine("Нажмите клавишу \"1\" для повтора ввода.\nИли нажмите любую другую клавишу чтобы завершить выполнение программы..."); | ||
|
||
if (Console.ReadKey().KeyChar == '1') | ||
{ | ||
CloseDataBase(); | ||
Console.Clear(); | ||
|
||
goto Repeat; | ||
} | ||
} | ||
} | ||
} |
36 changes: 36 additions & 0 deletions
36
Examples/ВыгрузкаТаблицы/KabisAPITest/Properties/AssemblyInfo.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
using System.Reflection; | ||
using System.Runtime.CompilerServices; | ||
using System.Runtime.InteropServices; | ||
|
||
// Общие сведения об этой сборке предоставляются следующим набором | ||
// набора атрибутов. Измените значения этих атрибутов для изменения сведений, | ||
// связанные с этой сборкой. | ||
[assembly: AssemblyTitle("KabisAPITest")] | ||
[assembly: AssemblyDescription("")] | ||
[assembly: AssemblyConfiguration("")] | ||
[assembly: AssemblyCompany("")] | ||
[assembly: AssemblyProduct("KabisAPITest")] | ||
[assembly: AssemblyCopyright("Copyright © 2024")] | ||
[assembly: AssemblyTrademark("")] | ||
[assembly: AssemblyCulture("")] | ||
|
||
// Установка значения False для параметра ComVisible делает типы в этой сборке невидимыми | ||
// для компонентов COM. Если необходимо обратиться к типу в этой сборке через | ||
// из модели COM задайте для атрибута ComVisible этого типа значение true. | ||
[assembly: ComVisible(false)] | ||
|
||
// Следующий GUID представляет идентификатор typelib, если этот проект доступен из модели COM | ||
[assembly: Guid("068599fb-e324-4a95-93c1-31b3716e2ecc")] | ||
|
||
// Сведения о версии сборки состоят из указанных ниже четырех значений: | ||
// | ||
// Основной номер версии | ||
// Дополнительный номер версии | ||
// Номер сборки | ||
// Номер редакции | ||
// | ||
// Можно задать все значения или принять номера сборки и редакции по умолчанию | ||
// используя "*", как показано ниже: | ||
// [assembly: AssemblyVersion("1.0.*")] | ||
[assembly: AssemblyVersion("1.0.0.0")] | ||
[assembly: AssemblyFileVersion("1.0.0.0")] |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
|
||
Microsoft Visual Studio Solution File, Format Version 12.00 | ||
# Visual Studio Version 17 | ||
VisualStudioVersion = 17.9.34728.123 | ||
MinimumVisualStudioVersion = 10.0.40219.1 | ||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "KabisAPITest", "KabisAPITest\KabisAPITest.csproj", "{068599FB-E324-4A95-93C1-31B3716E2ECC}" | ||
EndProject | ||
Global | ||
GlobalSection(SolutionConfigurationPlatforms) = preSolution | ||
Debug|Any CPU = Debug|Any CPU | ||
Release|Any CPU = Release|Any CPU | ||
EndGlobalSection | ||
GlobalSection(ProjectConfigurationPlatforms) = postSolution | ||
{068599FB-E324-4A95-93C1-31B3716E2ECC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU | ||
{068599FB-E324-4A95-93C1-31B3716E2ECC}.Debug|Any CPU.Build.0 = Debug|Any CPU | ||
{068599FB-E324-4A95-93C1-31B3716E2ECC}.Release|Any CPU.ActiveCfg = Release|Any CPU | ||
{068599FB-E324-4A95-93C1-31B3716E2ECC}.Release|Any CPU.Build.0 = Release|Any CPU | ||
EndGlobalSection | ||
GlobalSection(SolutionProperties) = preSolution | ||
HideSolutionNode = FALSE | ||
EndGlobalSection | ||
GlobalSection(ExtensibilityGlobals) = postSolution | ||
SolutionGuid = {8ECDFEC9-DB5F-41AE-B8EC-B917A2A74008} | ||
EndGlobalSection | ||
EndGlobal |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
<?xml version="1.0" encoding="utf-8" ?> | ||
<configuration> | ||
<startup> | ||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" /> | ||
</startup> | ||
</configuration> |
60 changes: 60 additions & 0 deletions
60
Examples/ЛокальноеПодключение/KabisAPITest/KabisAPITest.csproj
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
<?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>{068599FB-E324-4A95-93C1-31B3716E2ECC}</ProjectGuid> | ||
<OutputType>Exe</OutputType> | ||
<RootNamespace>KabisAPITest</RootNamespace> | ||
<AssemblyName>KabisAPITest</AssemblyName> | ||
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion> | ||
<FileAlignment>512</FileAlignment> | ||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects> | ||
<Deterministic>true</Deterministic> | ||
</PropertyGroup> | ||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> | ||
<PlatformTarget>AnyCPU</PlatformTarget> | ||
<DebugSymbols>true</DebugSymbols> | ||
<DebugType>full</DebugType> | ||
<Optimize>false</Optimize> | ||
<OutputPath>bin\Debug\</OutputPath> | ||
<DefineConstants>DEBUG;TRACE</DefineConstants> | ||
<ErrorReport>prompt</ErrorReport> | ||
<WarningLevel>4</WarningLevel> | ||
<Prefer32Bit>true</Prefer32Bit> | ||
</PropertyGroup> | ||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> | ||
<PlatformTarget>AnyCPU</PlatformTarget> | ||
<DebugType>pdbonly</DebugType> | ||
<Optimize>true</Optimize> | ||
<OutputPath>bin\Release\</OutputPath> | ||
<DefineConstants>TRACE</DefineConstants> | ||
<ErrorReport>prompt</ErrorReport> | ||
<WarningLevel>4</WarningLevel> | ||
</PropertyGroup> | ||
<ItemGroup> | ||
<Reference Include="PresentationCore" /> | ||
<Reference Include="System" /> | ||
<Reference Include="System.ComponentModel.DataAnnotations" /> | ||
<Reference Include="System.configuration" /> | ||
<Reference Include="System.Core" /> | ||
<Reference Include="System.Numerics" /> | ||
<Reference Include="System.Security" /> | ||
<Reference Include="System.Xml.Linq" /> | ||
<Reference Include="System.Data.DataSetExtensions" /> | ||
<Reference Include="Microsoft.CSharp" /> | ||
<Reference Include="System.Data" /> | ||
<Reference Include="System.Net.Http" /> | ||
<Reference Include="System.Xml" /> | ||
<Reference Include="WindowsBase" /> | ||
</ItemGroup> | ||
<ItemGroup> | ||
<Compile Include="Program.cs" /> | ||
<Compile Include="Properties\AssemblyInfo.cs" /> | ||
</ItemGroup> | ||
<ItemGroup> | ||
<None Include="App.config" /> | ||
</ItemGroup> | ||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> | ||
</Project> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
using System; | ||
using System.Text; | ||
using System.Runtime.InteropServices; | ||
|
||
namespace KabisAPITest | ||
{ | ||
internal class Program | ||
{ | ||
/* Тут находятся все функции экспорта, которые содержит библиотека kapi32.dll и kapi32u.dll */ | ||
|
||
[DllImport("kapi32u.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static IntPtr ScanForPass(string strAppName); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static string PtrToStr(IntPtr intPtr); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static bool OpenDataBase(string strDataBase, string strPassword); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static string EnumTables(); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static int GetTableCount(); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static string EnumFields(string strTable); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static int GetFieldCount(string strTable); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static string SelectAllFrom(string strTable, bool bOutput); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static string UnloadTable(string strTable, string strFile, int iType, bool bOutput); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static int GetTableRecords(string strTable); | ||
|
||
[DllImport("kapi32.dll", CallingConvention = CallingConvention.StdCall)] | ||
extern public static bool CloseDataBase(); | ||
|
||
static void Main(string[] args) | ||
{ | ||
Console.InputEncoding = Encoding.UTF8; | ||
Console.OutputEncoding = Encoding.UTF8; | ||
|
||
if (OpenDataBase("\\\\192.168.100.72\\KABIS\\Data\\Books.dbx", PtrToStr(ScanForPass("\\\\192.168.100.72\\KABIS\\KABIS.EXE")))) | ||
{ | ||
Console.WriteLine("База данных была успешно открыта через сетевую папку по IP-адресу компьютера!"); | ||
int iRecords = GetTableRecords("Books"); | ||
|
||
if (iRecords != -1) | ||
Console.WriteLine("Кол-во книг в библиотечном фонде: {0}", iRecords); | ||
|
||
if (CloseDataBase()) | ||
Console.WriteLine("Соединение с базой данных было закрыто."); | ||
} | ||
else | ||
Console.WriteLine("Не удалось открыть базу данных."); | ||
|
||
Console.ReadKey(); | ||
} | ||
} | ||
} |
Oops, something went wrong.