Zeitausgabe - Seite 2

Seite 2 von 2 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/zeitausgabe_184372/page_2 - zur Vollversion wechseln!


Marcellus schrieb am 31.08.2007 um 14:15

mit system(char*) machst übergibst du eine übergabe an das betriebssystem, sprich der string wird quasi in cmd.exe reinkopiert und ausgeführt.

Wenn du jetzt beispielsweise irgendeine usereingabe hast, die dan später mit system verarbeitet wird kann dir der user irgendwas reinschieben und damit befehle an dein system weitergeben, obwohl du das uu gar nicht haben willst. Der system aufruf ist extrem unsicher und deswegen verpöhnt.

Mal abgesehen davon ist system nicht betriebssystem unabhängig, der befehl "pause" gibts unter Linux(bei mir) nicht, dh das Programm würd abstürzen wenn ich das so machen würde.

Wenn du ohne systemaufrufe nicht zurande kommst hol dir pearl oder bash


Burschi1620 schrieb am 31.08.2007 um 14:20

Zitat von Marcellus
mit system(char*) machst übergibst du eine übergabe an das betriebssystem, sprich der string wird quasi in cmd.exe reinkopiert und ausgeführt.

Wenn du jetzt beispielsweise irgendeine usereingabe hast, die dan später mit system verarbeitet wird kann dir der user irgendwas reinschieben und damit befehle an dein system weitergeben, obwohl du das uu gar nicht haben willst. Der system aufruf ist extrem unsicher und deswegen verpöhnt.

Mal abgesehen davon ist system nicht betriebssystem unabhängig, der befehl "pause" gibts unter Linux(bei mir) nicht, dh das Programm würd abstürzen wenn ich das so machen würde.

Wenn du ohne systemaufrufe nicht zurande kommst hol dir pearl oder bash

Dankesehr.
Ich dachte es gäbe irgendwelche "probleme" mit dem parameter pause. dass es sicherheitstechnisch nicht so extrem klug ist (vor allem auf linux) ist natürlich klar - voraussetzung aber dass man den code vorm kompilieren hat.
Wie gesagt, danke - ich werde das natürlich ab nun berücksichtigen und diesen tipp nicht mehr geben :)


gue schrieb am 31.08.2007 um 14:30

Kanns noch jemand in Brain**** oder Ook! schreiben?

Mir gefällt übrigens sensei's Lösung am besten ;)


.dcp schrieb am 31.08.2007 um 14:39

c#:

Code:
using System;
...
string time = System.DateTime.Now.AddHours(17.5).ToString("dd.MM.yyyy - hh:mm:ss");


prayerslayer schrieb am 31.08.2007 um 14:46

die lösung vom colo ist der hammer, so gehört es gemacht! einzeiler ftw! :D


Marcellus schrieb am 31.08.2007 um 15:20

prayerslayer du bekommst eine ordendliche shell normalerweise nicht ohne einen haufen ballast auf windows zum laufen.

@Friedel was wirds denn jetzt?


mr.nice. schrieb am 31.08.2007 um 16:01

Hab was kleines in AutoIt3 für Windows geschrieben:

Code:
$stunden = IniRead("zeit.ini", "timetoadd", "stunden", "NotFound")
$minuten = IniRead("zeit.ini", "timetoadd", "minuten", "NotFound")
$h = @HOUR+$stunden
$m = @MIN+$minuten
$s = @SEC 
If $h > 24 Then
	$h = $h-24
If $m >= 60 Then
	$h = $h+1
	$m = $m-60
EndIf
EndIf
MsgBox(0, "Zeit", $h & ":" & $m & ":" & $s)
Exit

In der zeit.ini kann man einstellen wieviele Stunden und Minuten zur lokalen Systemzeit addiert werden sollen, diese muss im gleichen Verzeichnis sein wie die zeit.exe, per default sind 17 Stunden und 30 Minuten eingestellt, wie gewünscht.

Einfach die angefügte txt in zip umbenennen. :cool:


mat schrieb am 31.08.2007 um 16:08

Zitat von Burschi1620
keine sorge, er meint mich :)

kannst du mir vielleicht nun endlich mal erklären warum system("pause"); so verrufen ist?
Zitat von Aufhauser
des is jo die nechste deppate frog!
verstehst du nicht, dass dein einwand sowohl offtopic als auch unnötig war? system("pause") ist hier überhaupt nicht relevant. auch deine frage zum time-struct ist sinnlos. 0,3 min selber nachschauen und es hätte sich erledigt.


COLOSSUS schrieb am 31.08.2007 um 16:32

Ruby:

Code:
puts Time.now + 17.5*60**2


Burschi1620 schrieb am 31.08.2007 um 17:42

Zitat von mat
verstehst du nicht, dass dein einwand sowohl offtopic als auch unnötig war? system("pause") ist hier überhaupt nicht relevant. auch deine frage zum time-struct ist sinnlos. 0,3 min selber nachschauen und es hätte sich erledigt.
Hätte man das programm - wie es der causal windows user macht - über "anklicken" geöffnet hätte es sich wieder geschlossen. Mal abgesehn davon das es ein schlechter vorschlag war, frag ich mich warum er denn offtopic und unnötig war? (ich rede von system("Pause");)

Ja mit dem struct hab ich den post etwas überstürzt, das is korrekt. (Hab ihn mir ja im endeffekt selbst beantwortet)


Friedel schrieb am 31.08.2007 um 18:28

Zitat von Marcellus
@Friedel was wirds denn jetzt?
Ich hatte erstmal die erste Lösung genommen, die anderen hab' ich jetzt erst gesehen...

Werd' sie mir aber auch mal anschauen!
Danke für so viele unterschiedliche Vorgehensweisen!!!
:eek:


mat schrieb am 01.09.2007 um 14:20

Zitat von Burschi1620
Hätte man das programm - wie es der causal windows user macht - über "anklicken" geöffnet hätte es sich wieder geschlossen. Mal abgesehn davon das es ein schlechter vorschlag war, frag ich mich warum er denn offtopic und unnötig war? (ich rede von system("Pause");)
ja, und vergiss nicht dazu zu schreiben, dass man das programm noch kompilieren muss und welcher button dafür zuständig ist. weil jeder kompiliert mit deiner ide und jeder schreibt code für windows :bash:

btw, schluss jetzt damit.


Burschi1620 schrieb am 01.09.2007 um 16:12

Zitat von mat
ja, und vergiss nicht dazu zu schreiben, dass man das programm noch kompilieren muss und welcher button dafür zuständig ist. weil jeder kompiliert mit deiner ide und jeder schreibt code für windows :bash:

btw, schluss jetzt damit.
*g*
Du treibst es gerade ins lächerliche. Friedel wollte ein Programm für WinXP und auch zwar im Stile von (Quote Friedel) "Also ->klick=Zeitausgabe."
Marcellus' Programm hätte nicht einwandfrei funktioniert. Ich hab etwas hinzugefügt, und nur weil es "ein schlechter vorschlag" war flamest du jetzt herum.


mat schrieb am 01.09.2007 um 16:15

danke für deinen wertvollen beitrag burschi, wenn ich dich weiterhin beim rumspammen erwische, dann kannst du dir ein anderes forum suchen.




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026