Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

fread problem mit struct und Binärdatei

Frage Entwicklung C und C++

Mitglied: wuschel-cOre

wuschel-cOre (Level 1) - Jetzt verbinden

03.05.2009, aktualisiert 23:48 Uhr, 5843 Aufrufe, 24 Kommentare

Hi!!
01.
 
02.
struct Datum 
03.
04.
	int tt; 
05.
	int mm; 
06.
	int jj; 
07.
}; 
08.
 
09.
struct Person 
10.
11.
	int pnr; //nr der Person 
12.
	char name[30]; 
13.
	float gehalt; 
14.
	Datum gebdat; 
15.
};struct Person pers; 
16.
 
17.
 
18.
void delpers(); 
19.
void searchpers(int); 
20.
void getpers(); 
21.
void updpers(); 
22.
int main () 
23.
24.
/************Ausgabe Umlaute********/ 
25.
  char ue[] = "ü"; 
26.
  char oe[] = "ö"; 
27.
  char ae[] = "ä"; 
28.
  CharToOem(ue,ue); 
29.
  CharToOem(oe,oe); 
30.
  CharToOem(ae,ae); 
31.
/*************************************/ 
32.
  int aus,wid=1; 
33.
 
34.
 do 
35.
 {  
36.
  system("cls"); 
37.
  printf (" ------------- Bitte den Men%spunkt eingeben ! -----------------\n",ue); 
38.
  printf ("|                                                              |\n"); 
39.
  printf ("| 1.	Eingabe einer neuen Person                             |\n"); 
40.
  printf ("| 2.	W%shlen (pnr) und Ausgeben einer Person                 |\n",ae); 
41.
  printf ("| 3.	W%shlen (pnr) und L%sschen einer Person                  |\n",ae,oe); 
42.
  printf ("| 4.	W%shlen (pnr) und Update einer Person                   |\n",ae); 
43.
  printf ("| 5.	Personen sortiert nach Namen ausgeben                  |\n"); 
44.
  printf ("| 6.	Personen sortiert nach Geburtsdatum ausgeben           |\n"); 
45.
  printf ("| 7.	Personen sortiert nach Name und Geburtsdatum ausgeben  |\n"); 
46.
  printf ("| 8.	Reorganisation                                         |\n"); 
47.
  printf ("|                                                              |\n"); 
48.
  printf (" --------------------------------------------------------------\n\n",ue); 
49.
   
50.
  printf ("                    >>> "); scanf("%i",&aus); 
51.
  system ("cls"); //Clear Screen 
52.
    switch(aus) 
53.
54.
      case 0: 
55.
      wid==0; 
56.
      break; 
57.
      case 1: 
58.
      getpers(); 
59.
      break; 
60.
      case 2: 
61.
      printf ("Gib Nummer der Person ein die du ausgeben willst : - "); 
62.
      scanf ("%i",&pnr); 
63.
   **   searchpers();  ** 
64.
      break; 
65.
      case 3: 
66.
      printf ("Gib Nummer der Person ein die du l%sschen willst : - ",oe); 
67.
      scanf ("%i",&pers.pnr); 
68.
      delpers(); 
69.
      break; 
70.
      case 4: 
71.
      printf ("Gib Nummer der Person ein die du updaten willst : - ",oe); 
72.
      scanf ("%i",&pers.pnr); 
73.
      updpers(); 
74.
      break; 
75.
      case 5: 
76.
      break; 
77.
      case 6: 
78.
      break; 
79.
      case 7: 
80.
      break; 
81.
      case 8: 
82.
      break; 
83.
      default: 
84.
      printf ("                         // Falsche Eingabe //\n\n"); 
85.
      break; 
86.
87.
 }while(wid==1); 
88.
 system("PAUSE"); 
89.
 return 0; 
90.
91.
 
92.
 
93.
 
94.
 
95.
// Aufruf der Fuktion ....... Suchen einer Person, die in die Binärdatei gespeichert wurde 
96.
 
97.
void getpers() 
98.
99.
  fp= fopen ("pers.txt","a+b"); 
100.
  printf ("-- Bitte Daten der Person Eingeben --\n\n"); 
101.
  printf ("1. Nr = "); scanf ("%i",&pers.pnr); 
102.
  printf ("2. Name = "); scanf ("%s",&pers.name); 
103.
  printf ("1. Gehalt = "); scanf ("%f",&pers.gehalt); 
104.
  printf ("1. tt.mm.jj = "); scanf ("%i.%i.%i",&pers.gebdat.tt,&pers.gebdat.mm,&pers.gebdat.jj); 
105.
      
106.
  fwrite (&pers,sizeof(pers),1,fp);  //Hier wird in die Binärdateigeschrieben also die geraden eingegebene Werte. 
107.
  fclose (fp);      
108.
109.
 
110.
**void searchpers(int pnr) 
111.
112.
fp= fopen ("pers.bin", "r+b");             //Die Datei Binär öffnen 
113.
fseek(fp, 0L, SEEK_SET);             //Datei pointer zeigt danach auf den Anfang 
114.
 
115.
 if(fp==NULL) 
116.
 printf ("\nDatei wurde nicht gefunden!\n\n"); 
117.
  
118.
    do 
119.
120.
    fread (&pers, sizeof(pers),1,fp);               //////////////////////////////////// Genau hier stürzt er immer ab aber warum? 
121.
    }while(pnr!=pers.pnr);         // Also er macht die Schleife so lange bis pnr (das gesuchte) gleich dem pnr im 
122.
 
123.
    //gerade eingelsen struct aus der Textdatei ist 
124.
 
125.
    //Wenn gefunden 
126.
    printf ("\n\n    -- Die gesuchte Person - Pnr: %s - ist: --\n\n",pers.pnr);  
127.
    printf ("    1. Name = %s\n",pers.name); 
128.
    printf ("    2. Gehalt = %f\n",pers.gehalt); 
129.
    printf ("    3. tt.mm.jj = %i.%i.%i\n\n",pers.gebdat.tt,pers.gebdat.mm,pers.gebdat.jj); 
130.
     
131.
     
132.
    fclose(fp); //Schließen der Datei 
133.
printf ("\n\n\n"); 
134.
system ("PAUSE"); 
135.
}**

So Der fehler ist im Code markiert. fwrite also in die Binärdatei schreiben funktioniert einwandfrei.
aber fread wieder auslesen aus der Binärdatei funktioniert rein gar nicht. Also wenn ich die Zeile
mit dem fread weglassen würde das Programm funktionieren...
Mfg
Mitglied: maretz
03.05.2009 um 15:41 Uhr
ganz toll - du hast nen Programm geschrieben. Herzlichen Glückwunsch!

Ansonsten wäre eine Frage hilfreich...
Bitte warten ..
Mitglied: H41mSh1C0R
03.05.2009 um 15:52 Uhr
Augen auf, dann siehste das er unten ein Kommentar im Code zu stehen hat, wo steht:

" ;//////////////////////////// Genau hier stürzt er immer ab aber warum?"

Auch wenn das nicht so die feine Art ist tuen sich trotzdem fragen auf@Wuschel-Core. ^^

Wie lautet die Fehlermeldung?
Schon im Einzelschrittmodus durchs Programm gegangen?
KEINE Fehlerbehandlung vorhanden!!! (feof oder ferror)

Des Weiteren:
01.
do 
02.
03.
fread (pers, sizeof(struct Person),1,fp);  
04.
}while(pnr!=pers.pnr);
Wenn ich das richtig lese, willst du immer nur den ersten Datensatz aus fp auslesen und das solange deine Bedingung ungleich ist?
Bitte warten ..
Mitglied: 76109
03.05.2009 um 16:05 Uhr
Hallo wuschel-cOre,

also, erstmal bin ich ziemlich verwirrt,

Als ich mein letzten Borland 'C' Code vor ca 15 Jahren geschrieben habe, da gab's noch gewisse Syntaxregeln. So wurden z. B. Kommentare folgender Maßen gekennzeichnet, ansonsten wurde eine Syntax-Fehler ausgegeben.

Bei einer Zeile: // Kommentar für eine Zeile
Bei Blockzeilen: /* Am Anfang des Kommentarblocks und */ am Ende des Blocks

Dann schreibst Du noch Kommentare ohne irgendwas direkt hinter die Anweisungen

Zu meiner Zeit hätte das schon eine Menge an Compiler-Fehler verursacht.

Ausserdem solltest Du vielleicht mal die Funktion der Tab-Taste nutzen, um Deinen Code etwas übersichtlicher zu gestalten(Wartungsfreundlicher).

Gruß Dieter

PS. Nutze die Formatireungshilfe für Code. 1.Zeile = <$code> und letzte Zeile = <$/code> aber ohne das Dollarzeichen.
Bitte warten ..
Mitglied: 76109
03.05.2009 um 16:58 Uhr
Hallo wuschel-cOre,

großes Lob. Sieht doch gleich viel besser aus

Gruß Dieter
Bitte warten ..
Mitglied: 76109
03.05.2009 um 17:42 Uhr
Hallo wuschel-cOre,

Versuch mal das:

01.
fread (&pers, sizeof(struct Person),1,fp); 
Normaler übergibst Du ja einen Buff-Pointer, aber hier musst Du, wenn ich nicht irre die Adresse (&pers) der Struct übergeben?

Probiers aus. Ist halt schon sehr lange her.

Gruß Dieter
Bitte warten ..
Mitglied: mrtux
03.05.2009 um 17:52 Uhr
Hi !

Zitat von 76109:
Als ich mein letzten Borland 'C' Code vor ca 15 Jahren
geschrieben habe, da gab's noch gewisse Syntaxregeln. So wurden

Ja ja damals gab es auch noch keine automatische Code Komplettierung, wir mussten den Kopf noch selber anstrengen.

Zu meiner Zeit hätte das schon eine Menge an Compiler-Fehler
verursacht.

Die heutigen IDEs, lassen doch jeden Blödsinn durchgehen. Seit dem ganzen .net Krempel, gibt es Entwickler die zwar hervorragende Kenntnisse in C++, C# oder VB haben aber nicht mal die einfachsten Hintergrundkenntnisse über das Ziel-OS haben. Wie sonst kann ich mir solchen Schwachsinn erklären, dass es Applikationen gibt, in denen z. B, die Windows Systempfade oder die Netzwerkkonfiguration hardgecoded wurden.

Mei mei mei

mrtux
Bitte warten ..
Mitglied: 76109
03.05.2009 um 18:06 Uhr
Hallo mrtux,

das sind die Zeichen der Zeit. Programmieren per Drag&Drop
Für's Denken bleibt da nicht mehr soviel viel Zeit.

Gruß Dieter
Bitte warten ..
Mitglied: maretz
03.05.2009 um 18:14 Uhr
Moin,

ok, mein Fehler... Ich bin es halt gewohnt das jemand der eine Frage hat dieses auch den möglichen Antwortgebern so deutlich wie möglich mitteilt... Denn ich lese nicht erst den gesamten Quellcode durch BEVOR ich überhaupt weiss wo das problem liegen sollte...
Bitte warten ..
Mitglied: H41mSh1C0R
03.05.2009 um 18:54 Uhr
laut C Ref. kommt da kein Adressoperator hin.
Bitte warten ..
Mitglied: mrtux
03.05.2009 um 19:35 Uhr
Hi !

Zitat von 76109:
Hallo mrtux,
das sind die Zeichen der Zeit. Programmieren per Drag&Drop

Dagegen habe ich eigentlich nix, wenn Man(n) oder Frau weiss, was er/sie tut. Oft liegt aber genau da das Problem und nicht an der verwendeten IDE

Für's Denken bleibt da nicht mehr soviel viel Zeit.

...und wir Admins müssen den Schrott dann immer ausbaden

mrtux
Bitte warten ..
Mitglied: Biber
03.05.2009 um 19:58 Uhr
Zitat von 76109:
Hallo wuschel-cOre,

großes Lob. Sieht doch gleich viel besser aus

Gruß Dieter
<OT>
Moin wuschel-cOre,
moin maretz, H41mSh1COR, mrtux und didi1954,

@wuschel-cOre
Ich habe Deinen Code im -sagen wir mal großzügig- "Beitrag" in Code-Tags gesetzt.

Das war jetzt der zweite lieblos hingerotzte Beitrag innerhalb von 2 Tagen.
"Drei Mal ist Bremer Recht" heißt es bei mir zu Haus - Du solltest keine zu optimistischen Analogien für Deine Beiträge daraus ableiten.

Versprechen meinerseits:
Den nächsten Mir-doch-egal-Beitrag werde ich im Fluge löschen (ohne Umweg über Papierkorb).

Grüße
Biber
</OT>
Bitte warten ..
Mitglied: 76109
03.05.2009 um 19:59 Uhr
Hallo H41mSh1C0R,

wie gesagt, es ist schon sehr lange her.

also, ich würde vorschlagen den Code mit dem Debugger zu testen. Das ist die einfachste Methode einen Fehler zu finden

Aber vermutlich muss der "pers" erst noch einen (sizeof) Heap-Speicherplatz anfordern. Oder den Pointer weglassen, dann belegt die Struct Person Speicherplatz im Datensegment und kann mit "&Person" übergeben werden. So oder so ähnlich.

Gruß Dieter

PS. Wenns hilft. Ich habe noch eine uralte CD gefunden:

01.
 struct DREC { 
02.
           DB_     ATTR;                   
03.
           DW_     TIME;  
04.
           DW_     DATE;  
05.
           DD_     SIZE;    
06.
           DB_     NAME [13];    
07.
           DB_     RES0 [8]; 
08.
           VD_    *DPTR;     
09.
         }; 
10.
 
11.
  struct DREC  *DINFO; 
12.
 
13.
 if ( heapinit (DINFO, sizeof (struct DREC) * 1536, 0) )   exit (1);
oder
01.
 struct {   DD_    SZ;  
02.
            DB_    AR;  
03.
            DB_    AH; 
04.
            DB_    AS;  
05.
            DB_    AD; 
06.
            DB_    AA; 
07.
            DW_    DT; 
08.
            DW_    DM; 
09.
            DW_    DJ; 
10.
            DW_    TH; 
11.
            DW_    TM; 
12.
            DW_    TS; 
13.
         }  FINFO; 
14.
 
15.
 getftime ( hdl, &FINFO.TS ); 
16.
 
Bitte warten ..
Mitglied: 76109
03.05.2009 um 20:24 Uhr
Zitat von Biber:
@wuschel-cOre
Ich habe Deinen Code im -sagen wir mal großzügig "Beitrag" in Code-Tags gesetzt.

Hallo Biber,

OK, dann nehme ich mein großes Lob zurück und gebe es an Dich weiter Irgendwie hat mich das gleich daran errinnert, als DU meinen ersten Code so schön formatiert hattest. War doch verdächtig perfekt formatiert.

Zitat von mrtux:
...und wir Admins müssen den Schrott dann immer ausbaden

Hallo mrtux,

da bin ich aber froh, dass ich kein Admin bin und das ganze etwas lockerer sehen kann

Gruß Dieter
Bitte warten ..
Mitglied: wuschel-cOre
03.05.2009 um 23:56 Uhr
Okay Leute danke erstmal für die Hilfen mehr oder weniger!
didi1954 du hast recht. Der & Operator muss vorhanden sein.
Wird aber vom Compiler nicht als Fehler interpretiert ??
sorry wegen den formatierungen und der schlechten Beschreibung wollte eig. darauf hinaus
was beim fread der fehler war bzw. ist.

Habe noch einmal alles überarbeitet!.
Bitte warten ..
Mitglied: Biber
04.05.2009 um 07:30 Uhr
Zitat von wuschel-cOre:
sorry wegen den formatierungen und der schlechten Beschreibung
wollte eig. darauf hinaus was beim fread der fehler war bzw. ist.

Habe noch einmal alles überarbeitet!.
Moin wuschel-cOre,

danke Dir für das Überarbeiten.
Ist Deine Frage damit beantwortet (gelöst) oder sind noch Fragen offen?

Grüße
Biber
Bitte warten ..
Mitglied: 76109
04.05.2009 um 09:47 Uhr
Hallo wuschel-cOre,

Prima, Problem gelöst

Falls Deine Programme mit der Zeit komplexer werden, würde ich Dir dringend empfehlen, Dich mit den Debugger-Funktionen vertraut zu machen, da findest Du einen Fehler in der Regel viel schneller und man lernt einiges dazu. Ideal währe es natürlich, wenn Du Dir noch Assembler-Kenntnisse aneignen würdest, damit Du auch im Assembler-Modus debuggen kannst. Dann siehst Du auch den ganzen Ablauf und was im Hintergrund so vieles unnötige passiert. Das sind zum einen Bibliotheken-Schrott und zum anderen, die falsche Auswahl einer Funktion z.B. Printf, Prints oder Puts. Was ist der Unterschied und welcher Aufwand
wird letztendlich beim Einbinden von Bibliotheksmodulen betrieben. Das soll jetzt nur mal Aufzeigen, dass man wesentlich effektiver programmieren kann, wenn man den ganzen Ablauf nachvollziehen kann.


Gruß Dieter
Bitte warten ..
Mitglied: lowbyte1
05.05.2009 um 10:08 Uhr
Helo

Nemmt doch einfach eine referenz zur Hand, oder ein schön fettes Buch auf dem c/c++ steht. Das sind keine Probleme , sondern nur unwissenheit über die Syntax der Programmiersprache.
Nicht böse gemeint ...


lb
Bitte warten ..
Mitglied: H41mSh1C0R
06.05.2009 um 11:17 Uhr
Naja genau aus dieser Referenz habe ich ja gelesen und da stehen in den Beispielen KEINE "&" Operatoren an der Stelle. Hier hatte der TE aber anscheinend Erfolg, diesen & Operator zu setzen.

*grübel*

Oder die Referenz von G.Willms hat nen Fehler. ^^
Bitte warten ..
Mitglied: 76109
06.05.2009 um 12:49 Uhr
Hallo H41mSh1C0R,

ich denke nicht, dass Deine Referenz fehlerhaft ist.

Der Unterschied liegt nur in der Definition einer Structur (siehe meine Beispiele). Vergleichbar mit char str[80] und char *str.

Im 1.Fall ist die Structur nur definiert und hat noch keinen Speicherplatz. Ihr wird ein *Null-Pointer zugewiesen, für den z.B. mit Malloc erst ein Speicherplatz auf dem Heap angefordert werden muss und der *Pointer dann die Adresse auf diesen Speicherplatz enthält.

Im 2.Fall ist der Structur bereits Speicherplatz im Globalen Datensegment zugewiesen. D.h. hier muss dann die Adresse mit dem Adress-Operator (&) übergeben werden.

Die Funktion Fread erwartet als Parameter einen Pointer (void *ptr) auf die Structur.


Gruß Dieter
Bitte warten ..
Mitglied: H41mSh1C0R
06.05.2009 um 13:31 Uhr
Hi Dieter,

Also angewendet auf das Problem vom TE, greift Fall 2, weil mit fseek der Dateipointer an den Anfang gestellt wurde und dann mit fread bei jedem Durchlauf beginnend vom Anfang, immer Portionsweise ein Datensatz abgeholt wird.

Der Pointer auf die Struktur ist also immer die Adresse vom Anfang einer jeden Portion?

Sehe ich das richtig?

Gruß
H41mSh1C0r
Bitte warten ..
Mitglied: 76109
06.05.2009 um 16:02 Uhr
Hallo H41mSh1C0R,

also, mit den Funktionen FSEEK und FREAD hat das jetzt im Grunde nichts zu Tun.

Bei TE wird mit FREAD nacheinander immer nur ein Datensatz eingelesen und FSEEK steht automatisch auf dem nächsten Datensatz.

Es geht aber generell darum, wie ein Pointer anhand der einer Definition übergeben werden muss. Adresse (&) oder Pointer (*).

Wenn eine Funktion als Parameter einen Pointer (void *ptr) verlangt, dann muss das übergeben werden, was auf die Daten zeigt.

Im 1. Fall ist *DINFO ein Pointer. Er enthält z.B. durch Malloc initialisiert, die Adresse auf die Structur DREC. DINFO = [Zeiger auf Struct-DREC]
Im 2. Fall ist FINFO die Adresse. Hier stehen die Structur-Daten schon. FINFO = Struct-Daten und &FINFO = [Zeiger auf Struct-FINFO]

Ich weiß nicht, wie ich es besser erklären kann.

Gruß Dieter
Bitte warten ..
Mitglied: H41mSh1C0R
06.05.2009 um 18:38 Uhr
Hi Dieter,

dann ist das ja so wie ich das auch meine ^^.

Das was der TE mit fread abholt, enthält ja portionsweise seine Struct-Daten und somit muss der Adressoperator rein, weil die Daten/Struct ja bereits da sind.

Also Fall 2.

Gruß
H41mSh1C0r
Bitte warten ..
Mitglied: 76109
06.05.2009 um 20:14 Uhr
Hallo H41mSh1C0R,

Yep, das siehst Du richtig. Offensichtlich habe ich Deine Frage wohl vorher Missverstanden.

Hoffe, nun ist alles geklärt.

Gruß Dieter
Bitte warten ..
Mitglied: H41mSh1C0R
07.05.2009 um 10:51 Uhr
Hallo Dieter,

alles geklärt und danke für deine Erklärung und Beispiele.

Ist ja nicht so das ich das jeden Tag bräuchte, aber auffrischen schadet ja nie. ^^

Gruß
H41mSh1C0r
Bitte warten ..
Ähnliche Inhalte
C und C++
Struct in Header funktioniert nicht
gelöst Frage von Power-PolerC und C++2 Kommentare

Morgen, Versuche gerade einen Header mit structs zu erstellen. Aber es will einfach nicht. Ich glaube ich mache nur ...

VB for Applications
In Binärdatei suchen und Teile ausschneiden
Frage von Haegar75VB for Applications4 Kommentare

Hallo, vielleicht kann mir jemand helfen Ich möchte mit vb.net in einer Binärdatei nach dem Vorkommen von drei Zeichen ...

Server
Problem PHP5.4 Update nun ein Problem
Frage von vServerServer4 Kommentare

Hallo, habe heute auch PHP 5.4 Updatet, nun erhalte ich folgende Meldung: PHP-Quelltext Würde gerne noch auf PHP5.5 ...

Windows Tools
Problem mit excel
Frage von bertaschweigerWindows Tools2 Kommentare

ich habe da mal ein Problem: Excel 2013 / 365 setzt einen Blattschutz, welcher die Zellenbearbeitung (Eingabe) bei ungeschützten ...

Neue Wissensbeiträge
Perl

Perl hat heute Geburtstag: 30 Jahre Perl: Lange Gesichter zum Geburtstag

Information von Penny.Cilin vor 3 StundenPerl2 Kommentare

Hallo, auch wenn es wenige wissen und noch weniger Leute es nutzen. Perl hat heute Geburtstag. 30 Jahre Perl ...

Sicherheit

Blackberry stirbt - Keine Updates für Priv mehr

Tipp von certifiedit.net vor 4 StundenSicherheit

Blackberry wird zu einer 08/15 Firma und geht wohl mehr und mehr den Weg, den HTC schon ging. Von ...

Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 2 TagenWindows 1010 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Sicherheits-Tools

Achtung: Sicherheitslücke im FortiClient VPN-Client

Tipp von kgborn vor 2 TagenSicherheits-Tools

Ich weiß nicht, wie häufig die NextGeneration Endpoint Protection-Lösung von Fortinet in deutschen Unternehmen eingesetzt wird. An dieser Stelle ...

Heiß diskutierte Inhalte
Batch & Shell
Kann man mit einer .txt Datei eine .bat Datei öffnen?
gelöst Frage von HelloWorldBatch & Shell21 Kommentare

Wie schon im Titel beschrieben würde ich gerne durch einfaches klicken auf eine Text oder Word Datei eine Batch ...

Netzwerkgrundlagen
Belibiges Teilnetz einer Subnetzmaske rausfinden?
gelöst Frage von CenuzeNetzwerkgrundlagen17 Kommentare

Wundervollen Gutentag, mittlerweile kann ich Subnetting so einigermaßen, aber ein Problem habe ich noch. Netzwerkadresse und Boradcast errechnen ist ...

LAN, WAN, Wireless
WLAN Reichweite erhöhen mit neuer Antenne
gelöst Frage von gdconsultLAN, WAN, Wireless12 Kommentare

Hallo, ich besitze einen TL-WN722N USB-WLAN Dongle mit einer richtigen Antenne. Ich frage mich jetzt ob man die Reichweite ...

Windows Server
Logging von "gesendeten Nachrichten" auf Terminalservern
gelöst Frage von Z3R0C0MM4N0THiN6Windows Server10 Kommentare

Hallo zusammen, kann mir jemand auf kurzem Wege sagen ob 1) die per Task-Manager (oder damals tsadmin) an Benutzer ...