Nejčastěji odpovídající uživatel
Otevřít v programu -----> C# aplikace

Dotaz
-
Zdravím, jsem opravdový začátečník v C# a udělal jsem Formulářovou aplikaci pro rychlý upload obrázků na FTP.
Vše funguje tak, jak chci, ale chtěl bych svojí aplikaci trochu vylepšit.
Jde mi o to, že pokud chcete uploadovat obrázek, musíte kliknout na tlačítko a přez OpenFileDialog obzázek načíst...
Ale já bych chtěl abych obrázek načetl automaticky, pokud jej dám otevřít v programu.
Netuším, jak bych měl ošetřit něco takového, snad mi někdo poradí.
Předem díky, Pázny :)
Odpovědi
-
Ahoj, tak jestli tomu dobře rozumím, tak bysi chtěl asociovat svůj C# program s nějakou příponou. To můžeš udělat takhle:
1. Najdi ve svém solution soubor Program.cs, v něm bude řádka
static void Main()
tu nahradíš tímhle:
static void Main(string[] args) // pridan parametr
a vevnitř té metody změníš řádek:
Application.Run(new Form1(args)); // pridan parametr
2. Teď máš předávané parametry z příkazový řádky do tvýho formuláře, ještě s nimi potřebuješ něco udělat do kódu tvýho formuláře (řekněme Form1) přidáš řádek s proměnnou, aby ten začátek třídy vypadal takhle:
public partial class Form1 : Form { string CommandArg; // pridano
3. změníš v kódu svýho formuláře konstruktor na
public Form1(string[] args) // pridan parametr { if (args.Length == 1) // pridano CommandArg = args[0]; // pridano InitializeComponent(); }
4. Teď můžeš poklikat na formulář, nebo přidat událost OnLoad a v ní nastavit cestu ke svému obrázku pro upload
Pozn: Teď jsi udělal program, který akceptuje parametr z příkazové řádky, abys dokázal otevřít svůj program z Průzkumníka windows poklepáním na obrázek, musíš teď udělat následující:
1. Ulož si přeložený (.exe) program kde ho chceš mít
2. klikni pravým tl. myši v Průzkumníku ve windows na soubor, který chceš aby se ti v programu otevíral, (důležitá je přípona) třeba obrázek.jpg
3. z menu vyber "Open with" nebo "Otevřít v" a v dalším menu Choose default program (nebo Vybrat program)
4. teď klikni na Browse a vyhledej si svůj .exe program a dej OK
5. hotovo, vyzkoušej poklikat na nějaký .jpg soubor
M- Označen jako odpověď Robert HakenMVP, Moderator úterý 21. července 2009 7:25
-
Ahoj,
jestli jsem to pochopil správně, tak by mělo stačit zjistit, co byl první parametr příkazové řádky, a tento použít stejně, jako by to někdo vybral pomocí dialogu.
Argumenty příkazové řádky můžeš zjistit dvěma hlavními způsoby:
1) Přímo v metodě Main (pravděpodobně v souboru Program.cs) máš k dispozici pole args. Vhodné v konzolových aplikacích.
2) Kdekoliv v programu (např. v OnLoad hlavního formuláře aplikace) pomocí metody Environment.GetCommandLineArgs().
Měl bys tedy zjistit, jestli byl zadán alespoň jeden argument příkazové řádky, a ten zkusit použít jako jméno souboru (tedy minimálně zjistit existenci souboru).
A bacha - hned první argument (na indexu 0) je skutečný první argument příkazové řádky, tj. první argument není jméno spouštěného programu...- Navržen jako odpověď Petr Barták neděle 31. května 2009 10:56
- Označen jako odpověď Robert HakenMVP, Moderator úterý 21. července 2009 7:25
Všechny reakce
-
Ahoj,
jestli jsem to pochopil správně, tak by mělo stačit zjistit, co byl první parametr příkazové řádky, a tento použít stejně, jako by to někdo vybral pomocí dialogu.
Argumenty příkazové řádky můžeš zjistit dvěma hlavními způsoby:
1) Přímo v metodě Main (pravděpodobně v souboru Program.cs) máš k dispozici pole args. Vhodné v konzolových aplikacích.
2) Kdekoliv v programu (např. v OnLoad hlavního formuláře aplikace) pomocí metody Environment.GetCommandLineArgs().
Měl bys tedy zjistit, jestli byl zadán alespoň jeden argument příkazové řádky, a ten zkusit použít jako jméno souboru (tedy minimálně zjistit existenci souboru).
A bacha - hned první argument (na indexu 0) je skutečný první argument příkazové řádky, tj. první argument není jméno spouštěného programu...- Navržen jako odpověď Petr Barták neděle 31. května 2009 10:56
- Označen jako odpověď Robert HakenMVP, Moderator úterý 21. července 2009 7:25
-
-
Ahoj, tak jestli tomu dobře rozumím, tak bysi chtěl asociovat svůj C# program s nějakou příponou. To můžeš udělat takhle:
1. Najdi ve svém solution soubor Program.cs, v něm bude řádka
static void Main()
tu nahradíš tímhle:
static void Main(string[] args) // pridan parametr
a vevnitř té metody změníš řádek:
Application.Run(new Form1(args)); // pridan parametr
2. Teď máš předávané parametry z příkazový řádky do tvýho formuláře, ještě s nimi potřebuješ něco udělat do kódu tvýho formuláře (řekněme Form1) přidáš řádek s proměnnou, aby ten začátek třídy vypadal takhle:
public partial class Form1 : Form { string CommandArg; // pridano
3. změníš v kódu svýho formuláře konstruktor na
public Form1(string[] args) // pridan parametr { if (args.Length == 1) // pridano CommandArg = args[0]; // pridano InitializeComponent(); }
4. Teď můžeš poklikat na formulář, nebo přidat událost OnLoad a v ní nastavit cestu ke svému obrázku pro upload
Pozn: Teď jsi udělal program, který akceptuje parametr z příkazové řádky, abys dokázal otevřít svůj program z Průzkumníka windows poklepáním na obrázek, musíš teď udělat následující:
1. Ulož si přeložený (.exe) program kde ho chceš mít
2. klikni pravým tl. myši v Průzkumníku ve windows na soubor, který chceš aby se ti v programu otevíral, (důležitá je přípona) třeba obrázek.jpg
3. z menu vyber "Open with" nebo "Otevřít v" a v dalším menu Choose default program (nebo Vybrat program)
4. teď klikni na Browse a vyhledej si svůj .exe program a dej OK
5. hotovo, vyzkoušej poklikat na nějaký .jpg soubor
M- Označen jako odpověď Robert HakenMVP, Moderator úterý 21. července 2009 7:25