Aplikace bez okna/formuláře.
1) Jak vlastně vytvořím aplikaci (v c#) tak, aby byla bez okna/formuláře? Např. aplikace, která jen sejme obrazovku a uloží ji jako jpg nebo bmp. (vím jak)
2) Lze přes rapi funkce (například pomocí Desktop.Communication od OpenNETCF.org) spouštět aplikace v managed kódu?
Prosím, pokuste se mě někam nasměrovat.
děkuji,
---------------
S (Mobex)
2) Lze přes rapi funkce (například pomocí Desktop.Communication od OpenNETCF.org) spouštět aplikace v managed kódu?
Prosím, pokuste se mě někam nasměrovat.
děkuji,
---------------
S (Mobex)
Ad 1) Staci nezobrazit formular - nespustit message loop:
[CODE]
mespace SmartDeviceProject1
{
static class Program
{
///
/// The main entry point for the application.
///
[MTAThread]
static void Main()
{
//Libovolny vas kod
// Application.Run(new Form1()); - tento radek vymazete
} // Zde aplikace skonci
}
}
[/CODE]
Ad 2) Pokud vam jde jen o spusteni procesu, pouzijte API RAPI.CreateProcess.
[CODE]
public void CreateProcess(
string FileName,
string CommandLine)
[/CODE]
[CODE]
mespace SmartDeviceProject1
{
static class Program
{
///
/// The main entry point for the application.
///
[MTAThread]
static void Main()
{
//Libovolny vas kod
// Application.Run(new Form1()); - tento radek vymazete
} // Zde aplikace skonci
}
}
[/CODE]
Ad 2) Pokud vam jde jen o spusteni procesu, pouzijte API RAPI.CreateProcess.
[CODE]
public void CreateProcess(
string FileName,
string CommandLine)
[/CODE]
Díky za odpověď.
Ještě k ad1) Lze taky použít i konzolovou aplikaci (typ) - pokud ano jaký je pak mezi nimi rozdíl?
ad 2) Budu chtít počkat na ukončení té aplikace z ad1 a eventuálně i zjístit jak tj. s jakým výsledkem dopadla (dobře/špatně) - s tím si pohraji sám a snad by to už neměl být problém.
Ještě k ad1) Lze taky použít i konzolovou aplikaci (typ) - pokud ano jaký je pak mezi nimi rozdíl?
ad 2) Budu chtít počkat na ukončení té aplikace z ad1 a eventuálně i zjístit jak tj. s jakým výsledkem dopadla (dobře/špatně) - s tím si pohraji sám a snad by to už neměl být problém.
Ad 1) Tipuji, ze pro vas zadny :) Console app je jednoduse pro Windows dalsi ("bezokenni") typ aplikace s jinymi IN/Out nastavevenimi.
Ad 2) Tohle je spis kandidat na aktivaci vlastni knihovny na PDA, ktera spusti proces a pocka na dokonceni procesu a pote vam na PC posle vysledek.
Pres RAPI.Invoke spustite svoji funkci na pda (funkce musi byt napsana v C++ dll):
public void Invoke(
string DLLPath,
string FunctionName,
byte[] InputData,
out byte[] OutputData
);
Ve funkci Pres CreateProcess spustite proces na PDA, pockate pomoci WaitHandle na dokonceni, pres funkci GetExitCodeProcess zjistite navratovou hodnotu a poslete ji do pocitace (na pocitaci ji budete mit v out byte[] OutputData)
Ad 2) Tohle je spis kandidat na aktivaci vlastni knihovny na PDA, ktera spusti proces a pocka na dokonceni procesu a pote vam na PC posle vysledek.
Pres RAPI.Invoke spustite svoji funkci na pda (funkce musi byt napsana v C++ dll):
public void Invoke(
string DLLPath,
string FunctionName,
byte[] InputData,
out byte[] OutputData
);
Ve funkci Pres CreateProcess spustite proces na PDA, pockate pomoci WaitHandle na dokonceni, pres funkci GetExitCodeProcess zjistite navratovou hodnotu a poslete ji do pocitace (na pocitaci ji budete mit v out byte[] OutputData)