• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

C# и Ini файлы

  • Автор темы Lynch
  • Дата начала
Статус
Закрыто для дальнейших ответов.
L

Lynch

Подкиньте плз примерчик работы с ini файлами на C#. Искал, но так и не смог найти сам (
Если вообще есть, что-нибудь готовое для работы с ними. Просто на дельфе видел такое, подумал может и тут такое есть, чтобы не писать свое чего-то.
 
L

Lynch

Да действительно ini уже не модно, щас оказывается уже модно xml особенно если под .NET. Но работу с xml файлами я тож так и не нашел. Сложно чего-то найти, когда данная технология используется не только для этого. Мне надо просто хранить настройки программы в отдельном файлике, но чтобы он и читабельный был, а не просто значения в столбик. Подкиньте плз какую-нибудь ссылочку по работе с xml файлами, записью и чтением их. Спасибо.
 
P

Pasha

Для: Lynch
Еще есть мода на ...
 
W

Well Wisher

По поводу ini-файлов. Как-то меня тоже заинтересовал подобный вопрос. За вечерок сел и написал dll-ку, используя стандартные вызовы Win32 API. Например:
[DllImport("kernel32.dll", EntryPoint = "GetPrivateProfileString")]
public static extern int GetPrivateString(string section, string key, string def, StringBuilder buffer, int size, string path);

И через констуктор класса сделал обращения:

private const int SIZE = 1024;
public string Path = String.Empty;

public Ini(string path)
{
this.Path = path;
}

public string GetPrivateString(string section, string key)
{
StringBuilder buffer = new StringBuilder(SIZE);
GetPrivateString(section, key, null, buffer, SIZE, this.Path);
return buffer.ToString();
}

Все работает без сучка и задоринки. Подробности по функциям API смотри в MSDN. Но, действительно, лучше использовать Application Settings. Чем и пользуюсь.
 
P

Pasha

Для: Well Wisher
GetPrivateProfileString
This function is provided only for compatibility with 16-bit Windows-based applications.
32-х битная винда появилась 14 лет назад :)
 
W

Well Wisher

Для: Well Wisher
GetPrivateProfileString
This function is provided only for compatibility with 16-bit Windows-based applications.
32-х битная винда появилась 14 лет назад :)

kernel32.dll великолепно справляется со своей работой и на 32-х разрядной винде. А в MSDN, очевидно, говорится о том, что данная функция работает также и на 16-разрядной.
К тому же, если вспомнить, то даже на 95-ой все обращения к ini-файлам осуществлялись посредством этих функций. И на моей висте все работает отлично. Факт. Как это объяснить?
 
P

Pasha

<!--QuoteBegin-Well Wisher+14:09:2007, 16:50 -->
<span class="vbquote">(Well Wisher @ 14:09:2007, 16:50 )</span><!--QuoteEBegin-->kernel32.dll великолепно справляется со своей работой и на 32-х разрядной винде. А в MSDN, очевидно, говорится о том, что данная функция работает также и на 16-разрядной.
[snapback]78350" rel="nofollow" target="_blank[/snapback]​
[/quote]Нет, в MSDN, очевидно, сказано, что эта функция существует только для того, чтобы старые 16-ти разрядные приложения запускались под вистой. И что приложения должны (не могут, а именно должны) хранить настройки в реестре. Полностью мегафраза звучит так: <!--QuoteBegin-MSDN+-->
<span class="vbquote">(MSDN)</span><!--QuoteEBegin-->This function is provided only for compatibility with 16-bit Windows-based applications. Applications should store initialization information in the registry.[/quote]
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!