C a C# – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

C a C# – C / C++ – Fórum – Programujte.comC a C# – C / C++ – Fórum – Programujte.com

 

cybernick0
Newbie
19. 2. 2009   #1
-
0
-

Ahoj, mam v Cecku napsany kod, kterzy vyuziva knihovni funkce z ovladace Touchscreenu. Jedna funkce mi ziskava souradnice doteku, ma sice vice moznosti funkce(okamzite vraceni polohy, po doteku...), ale jedna z nich je, ze po doteku na touchscreen proste vrati souradnice. No a chtel bych tyto C funkce vyuzivat v C# aplikaci, a konat ruzne akce - simulace mysi. Mel bych dve otazecky.

1) Potreboval bych poradit, jakym zpusobem s tim muzu dostat ty funkce do c#. Primo z toho driveru to nedostanu, proto potrebuji ten C kod - mam z toho nejak udelat treba dll knihovnu, nebo nejak jinak udelat to rozhrani? Vim ze existuje neco jako c++/cli, ale do toho se mi moc nechce...

2)Budu mit c# aplikaci a vyvolavat tu funcki, ktera po doteku na Touchscreen vrati to misto doteku kde pak ta c# aplikace vykona treba kliknuti levym tlacitkem. Nebude s tim problem, kdyz beh programu narazi na tu funkci a bude cekat na odezvu o touchscreenu? Nespadne treba ten C# program?

Predem diky za pomoc

Nahlásit jako SPAM
IP: 85.70.52.–
Mega.Lama0
Stálý člen
19. 2. 2009   #2
-
0
-

To cybernick :
C funkce v .NET jazyku?...a co tak do properities urýpať do Refences tú DLL ?

Nahlásit jako SPAM
IP: 85.135.237.–
http://www.youtube.com/watch?v=j_tWGyCK6Ds ...kto by veril,že je to otcov bratranec z druhého kolena?...
cybernick0
Newbie
19. 2. 2009   #3
-
0
-

To Mega.Lama :

Ono to dll od driveru je psany cely v Cecku a jsou primo tam zamontovat nejde...

Nahlásit jako SPAM
IP: 85.70.52.–
dannyk0
Věrný člen
20. 2. 2009   #4
-
0
-

1,Moznost tu je. Pomoci System.runtime.InteropService namespace muzes pouzivat funkce z klasicke dll.
Takze si budes muset ten kod predelat na dll a pak si pomoci atributu udelat specialni tridu,ktera bude ty funkce z knihovny volat.
Tady je opravdu maly tutorialek:



http://cgempire.com/forum/tutorials-101/tutorial-c-using-unmanaged-c-dll-4118.html

Jinak hledej vyrazy jako "c# unmanaged dll" a podobne.

2,Tak zalezi,jak to funguje.Pokud opravdu funkce ceka, nez nastane dotek, a pak vrati souradnice, tak jedine,co ti program udela je to,ze se ti proste blokne cele jeho vykonavani,nez nastane dany dotek.
Pokud potrebujes,aby se vykonavaly dalsi veci,tak proste kod obsluhujici tuto dll strcis do nove vlakna.

Nahlásit jako SPAM
IP: 85.135.97.–
Jedu v c++,c#,assembler,ASP.NET,PHP,databaze,bezpecnost softwaru[br] -----------------------------------------------------------[br] Muj blog o programovani,hudbe a vsem moznem,co najdu na netu :) [br] http://dannyk.aspone.cz[br] -----------------------------------------------------------[br] Na foru mam nejake prispevky pod nickem Master,tak jen pro upresneni :)
cybernick0
Newbie
20. 2. 2009   #5
-
0
-

Oki. Neco uz mi pomohlo.

Narazil jsem na dalsi 2 problemky.

1) Je mozne primo predavat strukturu v C do tridy v C#, nebo to jde pouze vytvorenim stejne struktury v C# a pak az predani nejake tride?

2) Jdou pouzivat v C dll knihovne ve funkcich treba printf(), scanf()... prikazy? mysleno pro aby je spravne prevzal ten C#

Nahlásit jako SPAM
IP: 85.70.52.–
dannyk0
Věrný člen
20. 2. 2009   #6
-
0
-

1, Osobne sem to nezkousel,ale mam dojem,ze by to melo jit.Budes si vsak muset vytvorit tu samou strukturu i v C#,tomu se nejspis nevyhnes.

2, Teoreticky by to mohlo jit, protoze aplikace ma pouze jedno okno a do toho by se melo vypisovat vse,co jde na vystup.Otestovat to ale bude otazkou asi 15 minut,takze to muzes zkusit.
Mam vsak vyzkousene,ze lze pouzit v C++/CLI (Managed C++) jak printf,tak i Console::Write*

Nahlásit jako SPAM
IP: 85.135.97.–
Jedu v c++,c#,assembler,ASP.NET,PHP,databaze,bezpecnost softwaru[br] -----------------------------------------------------------[br] Muj blog o programovani,hudbe a vsem moznem,co najdu na netu :) [br] http://dannyk.aspone.cz[br] -----------------------------------------------------------[br] Na foru mam nejake prispevky pod nickem Master,tak jen pro upresneni :)
cybernick0
Newbie
21. 2. 2009   #7
-
0
-

To dannyk :

2) tak zkousel jsem to. Ve funkci v dll knihovne dal nejaky tisk na konzolu a sejmuti vstupu. Pri pouziti v C projektu to bez problemu beha, v C# to ty prikazy pro praci s konzolou uplne vynechava. Takze to nejspise nejde...

Nahlásit jako SPAM
IP: 85.70.52.–
dannyk0
Věrný člen
21. 2. 2009   #8
-
0
-

Je to mozne,ze to nemusi fungovat,i kdyz je to docela zvlastni.

Nahlásit jako SPAM
IP: 85.135.97.–
Jedu v c++,c#,assembler,ASP.NET,PHP,databaze,bezpecnost softwaru[br] -----------------------------------------------------------[br] Muj blog o programovani,hudbe a vsem moznem,co najdu na netu :) [br] http://dannyk.aspone.cz[br] -----------------------------------------------------------[br] Na foru mam nejake prispevky pod nickem Master,tak jen pro upresneni :)
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 33 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý