IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Mediel
Kit:29.10.2012 13:27

Je to vlastně obyčejná fronta. Když se naplní na určitou hodnotu, vezme se potřebný počet záznamů, uloží do souboru a jen ten kus se smaže. Mezitím tam mohou přibývat další záznamy.

Dřív se to dělalo jedním polem a dvěma pointry. Jeden ukazoval, kam se má zapisovat a druhý odkud se má číst. Když se zapsal poslední záznam, začalo se psát od začátku pole. Hlídalo se, aby se nepotkaly.

Odpovědět
29.10.2012 13:27
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Mediel
Tvůrce
Avatar
Mediel:29.10.2012 13:27

Zkusil jsem to oboji, jak ten muj priznak, ze pokud se zapisuje, tak na to nesahat, tak nulovat pred zapisem...

Porad se to pri druhem presazeni 1000 potentockuje.

Nahoru Odpovědět
29.10.2012 13:27
Nechci vám ukazovat, jak dobrý jsem já ... Chci vám ukázat, jak dobrý můžete být vy ... Když uvěříte ... V sami sebe...
Avatar
Kit
Tvůrce
Avatar
Odpovídá na Mediel
Kit:29.10.2012 13:28

Je to vlastně obyčejná fronta. Když se naplní na určitou hodnotu, vezme se potřebný počet záznamů, uloží do souboru a jen ten kus se smaže. Mezitím tam mohou přibývat další záznamy.

Dřív se to dělalo jedním polem a dvěma pointry. Jeden ukazoval, kam se má zapisovat a druhý odkud se má číst. Když se zapsal poslední záznam, začalo se psát od začátku pole. Hlídalo se, aby se nepotkaly.

Nahoru Odpovědět
29.10.2012 13:28
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Mediel
Tvůrce
Avatar
Mediel:29.10.2012 13:40

Pořád to nejde,

ať udělám cokoli, prostě něco pak využívá ten soubor. Nemůže se stát, že to zůstane nějak vyset po tom odeslání emailu? Nebo já už doopravdy nevím :(

Nahoru Odpovědět
29.10.2012 13:40
Nechci vám ukazovat, jak dobrý jsem já ... Chci vám ukázat, jak dobrý můžete být vy ... Když uvěříte ... V sami sebe...
Avatar
Mediel
Tvůrce
Avatar
Mediel:29.10.2012 13:47

Nekdo pres TeamViewer, kdo by se na to zkusil podivat?

Nahoru Odpovědět
29.10.2012 13:47
Nechci vám ukazovat, jak dobrý jsem já ... Chci vám ukázat, jak dobrý můžete být vy ... Když uvěříte ... V sami sebe...
Avatar
David Hartinger
Tým ITnetwork
Avatar
Odpovídá na Mediel
David Hartinger:29.10.2012 14:19

No tak email neodesílej, tohle se dá přeci jednoduše vyzkoušet. Dej pryč vlákna, dej pryč maily, nech jen zápis. Nemá smysl ladit celek, když nefunguje část.

Nahoru Odpovědět
29.10.2012 14:19
You are the greatest project you will ever work on.
Avatar
Mediel
Tvůrce
Avatar
Odpovídá na David Hartinger
Mediel:29.10.2012 14:24

Super, to me nenapadlo. Dal jsem pryc odesilani emailu se souborem a hle... uz to funguje, takze je tedy jiste, ze si to nejak drzi v pameti to odesilani, ze? Jak ale z toho ven? Jak mu vysvetlit, aby po odeslani ten soubor uvolnil?

Nahoru Odpovědět
29.10.2012 14:24
Nechci vám ukazovat, jak dobrý jsem já ... Chci vám ukázat, jak dobrý můžete být vy ... Když uvěříte ... V sami sebe...
Avatar
David Hartinger
Tým ITnetwork
Avatar
Odpovídá na Mediel
David Hartinger:29.10.2012 14:37

Tak, jak to máš napsané, by to neměl být problém, protože by ho měl uvolnit sám. Napadá mě už jen workaround si ten soubor po uložení zkopírovat a odesílat kopii. Můžeš to pro zajímavost zkusit, pokud to zkopíruješ pomocí File.Copy nebo jak to tam je a bude to dělat stejně, vyloučí se úplně chyba na straně zápisu do souboru.

Nahoru Odpovědět
29.10.2012 14:37
You are the greatest project you will ever work on.
Avatar
Mediel
Tvůrce
Avatar
Odpovídá na David Hartinger
Mediel:29.10.2012 14:56

Tak to jde, ale ta kopie po odeslani nejde smazat :( takze bych tam pak mel tisice souboru....

Nahoru Odpovědět
29.10.2012 14:56
Nechci vám ukazovat, jak dobrý jsem já ... Chci vám ukázat, jak dobrý můžete být vy ... Když uvěříte ... V sami sebe...
Avatar
Mediel
Tvůrce
Avatar
Mediel:29.10.2012 15:12

Vyřešeno, po odeslání emailu se musí Uvolnit prostředky používané AttachmentBase. (Zděděno z AttachmentBase.) a to takto:

mail.Dispose();

ukazka v kodu:

ailMessage mail = new MailMessage();
            mail.From = new MailAddress(User);
            mail.To.Add(new MailAddress(Adress));
            mail.Subject = Topic;
            mail.Body = Log;
            mail.Attachments.Add(new Attachment(FilePath));

            SmtpClient klient = new SmtpClient(SMTP, int.Parse(Port));
            klient.Credentials = new NetworkCredential(User, Pass);
            klient.EnableSsl = false;
            klient.Send(mail);
            mail.Dispose(); // uvolní soubor
Nahoru Odpovědět
29.10.2012 15:12
Nechci vám ukazovat, jak dobrý jsem já ... Chci vám ukázat, jak dobrý můžete být vy ... Když uvěříte ... V sami sebe...
Avatar
David Hartinger
Tým ITnetwork
Avatar
Odpovídá na Mediel
David Hartinger:29.10.2012 15:14

Divné, měl by to dělat sám po tom, co GC sežere ten objekt. No alespoň, že to konečně funguje :)

Nahoru Odpovědět
29.10.2012 15:14
You are the greatest project you will ever work on.
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:29.10.2012 15:23

GC ho nežere hned, ale až když potřebuje paměť. To bylo v tomto případě pozdě.

Nahoru Odpovědět
29.10.2012 15:23
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Tým ITnetwork
Avatar
Odpovídá na Kit
David Hartinger:29.10.2012 15:31

Jó, jasně, už to chápu :)

Nahoru Odpovědět
29.10.2012 15:31
You are the greatest project you will ever work on.
Avatar
Mediel
Tvůrce
Avatar
Mediel:29.10.2012 15:35

Díky kluci za pomoc :)

Nahoru Odpovědět
29.10.2012 15:35
Nechci vám ukazovat, jak dobrý jsem já ... Chci vám ukázat, jak dobrý můžete být vy ... Když uvěříte ... V sami sebe...
Avatar
David Hartinger
Tým ITnetwork
Avatar
Odpovídá na Mediel
David Hartinger:29.10.2012 15:58

Nemáš zač, jsme rádi za každou konstruktivní diskuzi :) Myslíš, že by ses mohl podělit s nějakou základní verzí toho programu? Tato tématika by mohla být zajímavá i pro ostatní.

Nahoru Odpovědět
29.10.2012 15:58
You are the greatest project you will ever work on.
Avatar
Mediel
Tvůrce
Avatar
Mediel:29.10.2012 15:59

Určitě se rád podělím o základní verzi programu :) Udělám na to asi článek :) Co ty na to?

Nahoru Odpovědět
29.10.2012 15:59
Nechci vám ukazovat, jak dobrý jsem já ... Chci vám ukázat, jak dobrý můžete být vy ... Když uvěříte ... V sami sebe...
Avatar
David Hartinger
Tým ITnetwork
Avatar
Odpovídá na Mediel
David Hartinger:29.10.2012 16:02

To by bylo úplně nejlepší :) Dal by se do C# do sekce Pro pokročílé, už se tam množí dost zajímavých věcí.

Nahoru Odpovědět
29.10.2012 16:02
You are the greatest project you will ever work on.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 17 zpráv z 67.