Diskuze: Update programu
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Neregistrovaný
Zobrazeno 29 zpráv z 29.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Nejlepší (podle mě) je zapsat si verzi do registru. Naprogramovat aktualizační službu (další aplikaci), která to ověří v registru a případně přepíše starou verzi.
Nezapisoval bych do registru,postačil by XML soubor s nějakým infem
To je celkem fuk, jak to zapíšeš. Podstatné je pouze to, že pak spětně tu verzi zjistíš.
Odkážu tě na článek: http://www.itnetwork.cz/…bovy-updater
je tam vše,co potřebuješ
Děkuju to je přesně ono, ale chci se zeptat jestli není někde zdroj. kod toho programu. Je to super, ale chtěl by sem to spustit přímo v mém programu a taky aby uživatel neznal doménu odkud stahuje update.
Jinak je to přesně to co potřebuju
Kod jsem našel, ale má to nějaký rozbitý. Ani se mi nezobrazí okno. Kde je prosím chyba? Vím, že ve mně, ale proc to nic nedělá?
zkontroluj si zda máš vše nastavené jak má být,mělo by to fungovat
Už jsem otestoval všechno. Nezobrazí se ani okno a kdyz spustim kompilovaný od autora, tak to udělá taky prd. Jsem začátečník a na jednu stranu mě baví, že autor to tam dal nedodělaný. Programátor co tomu bude rozumět si to udělá sám a možná mnohem lépe a začátečník jako já to nerozchodí.
Tudíš si troufnu říct, že článek je o ničem. Nejdřív to chtělo soubor, tak jsem mu ho poskytl podle manuálu a ted nedělá nic. Tak když to pouštím, tak soubor dávám pryč at vim, že to alespon něco dělá
uu.ini souboru jsem vlozil:
1.25.3333\nhttp://domena.cz/catalog/download/index.php?id=1f5r8d
Php soubor sice v souboru nebyla pribaleny, tak jsem použil tenhle kod a předpokládám, že se jedná o stejný soft.
switch ($_GET["progid"]) {
case "muj_program_1":
echo "1 0 0 0 http://www.domena.cz/catalog/download/program.exe http://www.example.com/soubor2.dll";
break;
case "muj_program_2":
echo "1 0 0 5 http://www.domena.cz/catalog/download/program.exe";
break;
default:
echo "error";
break;
}
header("Content-Type:text/plain; charset=utf-8");
Asi dělám někde chybu já, ale nevím kde
echo "1.0.0.0
http://www.domena.cz/catalog/download/program
http://www.domena.cz/catalog/download/index.php?file=505b0c67d08e0&name=program.exe";
header("Content-Type:text/plain; charset=utf-8");
Snažím se o výstup jaký chce, ale požád stejná hláška. Kde je chyba? Fakt super manuál. Jako udělat webovku bez rozcestníku a divit se, že uživatel nedojde dál než na úvodní stranu.
U daného programu je vše přesně popsané dokonce i s ukázkou PHP kódu.
Pokud soubor vracíš nějakým PHP skriptem, můžeš tam mít chybu. Případně hoď PM Pelpetovi nebo to napiš k jeho článku, aby ti mohl poradit.
Nic hroznýho to zas není až na tuhle zrůdovinu hned pod konstruktorem v hlavní třídě.
ComponentResourceManager componentResourceManager = new ComponentResourceManager(typeof (Form1));
this.status = new Label();
this.panel1 = new Panel();
this.linkLabel1 = new LinkLabel();
this.rate = new Label();
this.progress = new ProgBar();
this.SuspendLayout();
this.status.AutoSize = true;
this.status.Location = new Point(12, 9);
this.status.Name = "status";
this.status.Size = new Size(98, 13);
this.status.TabIndex = 0;
this.status.Text = "Probíhá příprava...";
this.panel1.BackColor = SystemColors.ControlDark;
this.panel1.Location = new Point(125, 78);
this.panel1.Name = "panel1";
this.panel1.Size = new Size(257, 1);
this.panel1.TabIndex = 3;
this.linkLabel1.ActiveLinkColor = Color.FromArgb(128, 128, (int) byte.MaxValue);
this.linkLabel1.AutoSize = true;
this.linkLabel1.LinkBehavior = LinkBehavior.AlwaysUnderline;
this.linkLabel1.LinkColor = Color.FromArgb(128, 128, (int) byte.MaxValue);
this.linkLabel1.Location = new Point(12, 70);
this.linkLabel1.Name = "linkLabel1";
this.linkLabel1.Size = new Size(107, 13);
this.linkLabel1.TabIndex = 5;
this.linkLabel1.TabStop = true;
this.linkLabel1.Text = "www.pumpkin.mzf.cz";
this.linkLabel1.VisitedLinkColor = Color.FromArgb(128, 128, (int) byte.MaxValue);
this.linkLabel1.LinkClicked += new LinkLabelLinkClickedEventHandler(this.linkLabel1_LinkClicked);
this.rate.Location = new Point(222, 45);
this.rate.Name = "rate";
this.rate.Size = new Size(160, 18);
this.rate.TabIndex = 6;
this.rate.Text = "0 B/s";
this.rate.TextAlign = ContentAlignment.MiddleRight;
this.progress.BorderStyle = BorderStyle.Fixed3D;
this.progress.Location = new Point(12, 27);
this.progress.Name = "progress";
this.progress.Size = new Size(370, 18);
this.progress.TabIndex = 1;
this.AutoScaleDimensions = new SizeF(6f, 13f);
this.AutoScaleMode = AutoScaleMode.Font;
this.ClientSize = new Size(394, 92);
this.Controls.Add((Control) this.rate);
this.Controls.Add((Control) this.linkLabel1);
this.Controls.Add((Control) this.panel1);
this.Controls.Add((Control) this.progress);
this.Controls.Add((Control) this.status);
this.FormBorderStyle = FormBorderStyle.FixedSingle;
this.Icon = (Icon) componentResourceManager.GetObject("$this.Icon");
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "Form1";
this.SizeGripStyle = SizeGripStyle.Hide;
this.StartPosition = FormStartPosition.CenterScreen;
this.Text = "Updater";
this.Load += new EventHandler(this.Form1_Load);
this.ResumeLayout(false);
this.PerformLayout();
I to je možné, ale spíš ne Visual Studio to dělá kapánek jinak. Možné to vygenerovalo VS a dotPeek mi to špatně vyplivnul z5.
To je možné, nemyslím si, že si ručně pozicoval controly na formuláři
hehe jinak celkově ten kód nevypadal tak hrozně že by ses za něj mel stydět. Akorát tohle.. ale to dotpeek akorát nejspiš sloučil form1 designers.cs a form1 takže v tom vzniknul takový bordel.
No ale pak se divíme, proč se programátoři snaží takhle neobjektově psát aplikace.
Vyjádřil jsem se jen k tomu generovanému fragmentu. Zbytek programu jsem zatím neviděl.
Zobrazeno 29 zpráv z 29.