diff --git a/doc/src/sgml/ref/pg_ctl-ref.sgml b/doc/src/sgml/ref/pg_ctl-ref.sgml new file mode 100644 index 36d7200..d95d50c *** a/doc/src/sgml/ref/pg_ctl-ref.sgml --- b/doc/src/sgml/ref/pg_ctl-ref.sgml *************** PostgreSQL documentation *** 117,122 **** --- 117,123 ---- -w -t seconds + -s -o options diff --git a/src/bin/pg_ctl/pg_ctl.c b/src/bin/pg_ctl/pg_ctl.c new file mode 100644 index 98bbaef..fa346ae *** a/src/bin/pg_ctl/pg_ctl.c --- b/src/bin/pg_ctl/pg_ctl.c *************** write_eventlog(int level, const char *li *** 163,168 **** --- 163,171 ---- { static HANDLE evtHandle = INVALID_HANDLE_VALUE; + if (silent_mode && level == EVENTLOG_INFORMATION_TYPE) + return; + if (evtHandle == INVALID_HANDLE_VALUE) { evtHandle = RegisterEventSource(NULL, "PostgreSQL"); *************** pgwin32_CommandLine(bool registration) *** 1225,1230 **** --- 1228,1236 ---- if (registration && wait_seconds != DEFAULT_WAIT) /* concatenate */ sprintf(cmdLine + strlen(cmdLine), " -t %d", wait_seconds); + + if (registration && silent_mode) + strcat(cmdLine, " -s"); if (post_opts) {