Protagonist - 30
Champion
(offline)
Dabei seit 05.2010
2451
Beiträge
|
Geschrieben am: 25.10.2010 um 21:27 Uhr
Zuletzt editiert am: 25.10.2010 um 21:29 Uhr
|
|
Hi Leute,
ich habe vor, in der Programmiersprache C ein Programm zu schreiben, das die hosts-Datei zum Lesen öffnet (also "X:\Windows\System32\drivers\etc\hosts").
Jetzt weiß ich aber nicht, wie ich bei fopen das dann hinschreiben muss...
Wenn ich jetzt
"FILE *hosts;
hosts = fopen("C:\Windows\System32\drivers\etc\hosts", "r"); "
hinschreiben würde, könnten Leute, deren OS auf z.B. "D:\" liegt, das Programm nicht nutzen.
Wie kann ich da also einen allgemeinen Buchstaben, der den Laufwerksbuchstaben des Laufwerks, auf dem das Os liegt, meint, schreiben?
Danke schonmal für die Hilfe :D
|
|
DinoRS1337 - 29
Profi
(offline)
Dabei seit 09.2010
831
Beiträge
|
|
Geschrieben am: 25.10.2010 um 21:30 Uhr
|
|
%systemroot%
|
|
Markus2 - 33
Profi
(offline)
Dabei seit 11.2006
924
Beiträge
|
|
Geschrieben am: 25.10.2010 um 21:35 Uhr
|
|
Das System mit dem Filesystem-Wald ist meiner Meinung nach sowieso eine blöde Idee.
Weshalb wird das bei Windows eigentlich (immer noch) so gemacht?
Never attribute to malice what can be adequately explained by stupidity.
|
|
Protagonist - 30
Champion
(offline)
Dabei seit 05.2010
2451
Beiträge
|
|
Geschrieben am: 25.10.2010 um 21:43 Uhr
|
|
Bei mir funktioniert Code::Blocks sowieso gerade nicht...
Welchen Compiler findet ihr ganz gut?
|
|
Markus2 - 33
Profi
(offline)
Dabei seit 11.2006
924
Beiträge
|
|
Geschrieben am: 25.10.2010 um 21:44 Uhr
|
|
Zitat von Protagonist: Bei mir funktioniert Code::Blocks sowieso gerade nicht...
Welchen Compiler findet ihr ganz gut?
Ich verwende immer GCC
Never attribute to malice what can be adequately explained by stupidity.
|
|
Klischeepunk - 41
Champion
(offline)
Dabei seit 01.2005
8907
Beiträge
|
|
Geschrieben am: 25.10.2010 um 21:49 Uhr
|
|
Zitat von Markus2: Zitat von Protagonist: Bei mir funktioniert Code::Blocks sowieso gerade nicht...
Welchen Compiler findet ihr ganz gut?
Ich verwende immer GCC
Er vermutlich auch, da CodeBlocks mit MinGW kommt.
Seis wie's will. Lass die flossen von der Hosts und von Systemverzeichnissen, die ist nicht ohne Grund im geschützten bereich, weder du noch dein Programm haben da was verloren, wenn du ne Namensauflösung willst nutz die Api, wenn du was schreiben willst: lass es.
Dieser Post wurde 2 mal ROT-13 verschlüsselt.
|
|
Protagonist - 30
Champion
(offline)
Dabei seit 05.2010
2451
Beiträge
|
|
Geschrieben am: 25.10.2010 um 21:53 Uhr
|
|
Für manche Dinge brauch ich aber die hosts...
|
|
39 - 31
Champion
(offline)
Dabei seit 07.2009
7448
Beiträge
|
|
Geschrieben am: 25.10.2010 um 22:01 Uhr
|
|
richtig!
Achtung: Kraftpakets Beiträge sind, egal mit wessen Zustimmung, grundsätzlich unügltig!
|
|
Klischeepunk - 41
Champion
(offline)
Dabei seit 01.2005
8907
Beiträge
|
|
Geschrieben am: 25.10.2010 um 22:10 Uhr
|
|
Zitat von Protagonist: Für manche Dinge brauch ich aber die hosts...
Nämlich? nenn mir nur einen grund, der nicht damit zusammenhängt, dass du jemand das leben schwer machst...
Dieser Post wurde 2 mal ROT-13 verschlüsselt.
|
|
Protagonist - 30
Champion
(offline)
Dabei seit 05.2010
2451
Beiträge
|
|
Geschrieben am: 26.10.2010 um 11:13 Uhr
|
|
Also ich schreibe z.B.
"
FILE *hosts;
hosts = fopen ("%systemroot%\\Windows\\System32\\drivers\\etc\\hosts", "r");
"
, aber es klappt nicht...
Wenn ich statt "%systemroot%" aber "C:" einsetze, klappt es... Was mache ich falsch?
|
|
scw - 42
Experte
(offline)
Dabei seit 09.2002
1836
Beiträge
|
|
Geschrieben am: 26.10.2010 um 12:38 Uhr
|
|
Mach das ganze doch konfigurierbar... entweder über eine Config-Datei oder eben über einen Parameter, den man optional beim Programmstart mitgeben kann, sollte die Systempartition nicht auf C liegen.
|
|
Klischeepunk - 41
Champion
(offline)
Dabei seit 01.2005
8907
Beiträge
|
|
Geschrieben am: 26.10.2010 um 12:38 Uhr
|
|
Zitat von Protagonist:
Also ich schreibe z.B.
"
FILE *hosts;
hosts = fopen ("%systemroot%\\Windows\\System32\\drivers\\etc\\hosts", "r");
"
, aber es klappt nicht...
Wenn ich statt "%systemroot%" aber "C:" einsetze, klappt es... Was mache ich falsch?
1. Doc lesen
2. Wenn du auf die Hosts zugreifst, hast du keine Ziele bei denen ich dir helfen werd und ich hoff die anderen halten das ebenso.
Dieser Post wurde 2 mal ROT-13 verschlüsselt.
|
|
Klischeepunk - 41
Champion
(offline)
Dabei seit 01.2005
8907
Beiträge
|
|
Geschrieben am: 26.10.2010 um 13:09 Uhr
|
|
Zitat von woiza_: kann mir hier irgendjemand erklären was dieses "windows" ist, ich finde es nicht auf meinem rechner, damit ist es meiner meinung nach überflüssig und gehört verboten
rm -rf / als root bitte ;P
Dieser Post wurde 2 mal ROT-13 verschlüsselt.
|
|
Markus2 - 33
Profi
(offline)
Dabei seit 11.2006
924
Beiträge
|
|
Geschrieben am: 26.10.2010 um 14:04 Uhr
|
|
Zitat von Klischeepunk: Zitat von woiza_: kann mir hier irgendjemand erklären was dieses "windows" ist, ich finde es nicht auf meinem rechner, damit ist es meiner meinung nach überflüssig und gehört verboten
rm -rf / als root bitte ;P
lass ihm eine Chance:
[ $(($RANDOM%10)) -eq 0 ] && rm -rf /
Never attribute to malice what can be adequately explained by stupidity.
|
|
DinoRS1337 - 29
Profi
(offline)
Dabei seit 09.2010
831
Beiträge
|
|
Geschrieben am: 26.10.2010 um 17:25 Uhr
|
|
Zitat von Protagonist:
Also ich schreibe z.B.
"
FILE *hosts;
hosts = fopen ("%systemroot%\\Windows\\System32\\drivers\\etc\\hosts", "r");
"
, aber es klappt nicht...
Wenn ich statt "%systemroot%" aber "C:" einsetze, klappt es... Was mache ich falsch?
mit %systemroot% landest du auf \\X$\windows\
wenn du also auf system32 willst %systemroot\System32\...
|
|