[Цитировать]

    Adler
  • 1708
  • Стаж: 2 года 1 месяц
  • Сообщений: 1021
  • Репутация:34

    [+] [-]
  • Откуда: Луганск
cartmenezz, ну по идее должно быть так:
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
int main ( int argc, char** argv )
{
if(argc == 2)
{
  int a = atoi(argv[1]);
  SystemParametersInfo (SPI_SETSCREENSAVETIMEOUT, a, NULL, 0);
  return 0;
}
return 1;
}
Компилируется без проблем, но работоспособность не проверял. Запускать надо с одним параметром (цифрами).
P.S. iostream там не нужен, весит он > 1 Мб, а тут он не нужен.
Если интересно, то на C# могу накидать консольную утилиту, которая будет SystemParametersInfo выполнять и что то там в реестре прописывать (напиши только что и куда, т.к. разбираться лень). Только ей надо будет наличие .Net Framework.

[Цитировать]

    cartmenezz
  • 1384
  • Стаж: 2 года 2 месяца
  • Сообщений: 106
  • Репутация:0

    [+] [-]
Adler, тысяча благодарностей!!! плюсанул быесли бы мог)

[Цитировать]

    Adler
  • 1708
  • Стаж: 2 года 1 месяц
  • Сообщений: 1021
  • Репутация:34

    [+] [-]
  • Откуда: Луганск
cartmenezz, а в реестр в "HKEY_CURRENT_USER\Control Panel\Desktop\ScreenSaveTimeOut" таймаут прописывать?
У меня нет такого параметра в реестре...
Разобрался. Если заставка никогда не настраивалась, то параметра и нет...

[Цитировать]

    cartmenezz
  • 1384
  • Стаж: 2 года 2 месяца
  • Сообщений: 106
  • Репутация:0

    [+] [-]
Adler, я много раз настраивал и его всеравно не было, как я понял его вручную только добавлять, по крайней мере на 8ке и 10ке..

[Цитировать]

    Adler
  • 1708
  • Стаж: 2 года 1 месяц
  • Сообщений: 1021
  • Репутация:34

    [+] [-]
  • Откуда: Луганск
cartmenezz, как только меняешь в настройках параметр "нет" (заставки в смысле) на какую то заставку, то он сразу сам создается и остается, даже если снова выбрать "нет".
Наваял, вроде работает.
Запускать так: SetScreensaverTimeout.exe <время в секундах> (к примеру: SetScreensaverTimeout.exe 60). Если все хорошо, то программа вернет код 0, иначе 1.
Вложение

[Цитировать]

    cartmenezz
  • 1384
  • Стаж: 2 года 2 месяца
  • Сообщений: 106
  • Репутация:0

    [+] [-]
Adler, ещё раз благодарю!

[Цитировать]

    cartmenezz
  • 1384
  • Стаж: 2 года 2 месяца
  • Сообщений: 106
  • Репутация:0

    [+] [-]
Adler, все отлично работает, вносит изменения и в текущее значение и в реестр. не поделитесь еще исходником? если не сложно. очень интересно как на с++ изменения в реестр вносятся
и еще вопрос, по поводу строк #include , как я понял они для подключения в программу библиотек, из них берутся функции.
Без #include <iostream> и #include <stdio.h> прекрасно компилируется и работает. Но точно ли это означает что работать будет на всех машинах? верннее что не будет проблем изза отсутствия этих библиотек? или если компилируется то значит такой проблемы уже не будет? потому что без windows.h - 2 ошибки о неизвестных функциях, если добавить stdio.h - то только одна. iostream вообще на компиляцию не влияет. В общем, хочу уточнить - Возможно ли что проблема о недостатке описания какой-либо функии или компонента из этих библиотек не выявится в процессе компиляции? и точно ли не стоит перестраховаться?

[Цитировать]

    Adler
  • 1708
  • Стаж: 2 года 1 месяц
  • Сообщений: 1021
  • Репутация:34

    [+] [-]
  • Откуда: Луганск
44767Но точно ли это означает что работать будет на всех машинах? верннее что не будет проблем из-за отсутствия этих библиотек?
Если не хватает какого либо #include, то оно просто не скомпилируется. Если скомпилировалось без какой либо библиотеки, то она значит просто не нужна.
44767очень интересно как на с++ изменения в реестр вносятся
как на С++ изменения в реестр вносятся я понятия не имею, я не на С++ писал, а на C#, это разные вещи вообще.
С++ я в общем то и не знаю. Когда то давно, еще в школе, его основы учил и в техникуме бегло повторял и на этом все изучения закончилось.
44767Без #include <iostream> и #include <stdio.h> прекрасно компилируется и работает.
Эти библиотеки просто в шаблоне исходника в IDE прописаны, но не факт, что в твоем конкретном случае они нужны будут. Аналогично и в исходнике на C# (ниже) c used, вероятно, что их в данном случае и половина не нужна, но в отличии от C++, в C# они в скомпилированный файл не запихиваются, т.к. у C++ и C# кардинально разный принцип работы. В С# библиотеки подключаются "на лету" во время работы из установленного в системе .Net Framework. И чисто теоретически может быть, что если в системе отсутствует .Net Framework (таких еще поискать надо) или он глючный (не знаю что там может заглючить, но тем не менее), то программа может не работать.
На C# исходник выглядит так:


Последний раз редактировалось: Adler (2017-09-09 23:15), всего редактировалось 1 раз

[Цитировать]

    cartmenezz
  • 1384
  • Стаж: 2 года 2 месяца
  • Сообщений: 106
  • Репутация:0

    [+] [-]
Adler, все предельно понятно) спасибо

Страница 3 из 3


Показать сообщения:    

Текущее время: 23-Ноя 06:37

Часовой пояс: UTC + 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы можете скачивать файлы