IT NEWS PC REVUE PC FORUM FreeBSDInternet time: @732
Obsah fóra
Pravidlá  •  Kontakt  •  Prihlásenie  •  Registrácia

OPIS Engineering, s.r.o

Prevodovky, bonfiglioli , elektromotory tlmiče rázov, frekvenčné meniče, spojky www.opis.sk

Stavba - pred začatím, počas

výstavby, po dokončení stavby - všetky geodetické práce v okresoch BA, SC www.geodetickeprace.sk

Výpredaj matracov

Zľavy 50% Len do vypredania zásob www.vypredajmatracov.sk

Myslite ekologicky s Orangeom

Zapojte sa do súťaže Zeleň pre mesto a získajte viac stromov pre svoje okolie www.orange.sk

Neuveriteľne lacná .sk doména

Rýchla registrácia domén za výborné ceny. www.exohosting.sk

parameter funkcie v C++/CLR + IDS camera

Zaslať odpoveď
AutorSpráva
m@-nX
Užívateľ
Užívateľ

Založený: 25.12.2006
Príspevky: 239
Bydlisko: Krásno n/Kys. / Ova - ČR

PríspevokZaslal: Ne 04.04.10 18:41Odpovedať s citátomNávrat hore

Zdravim,

pisem taku mini-aplikaciu na demonstraciu prace s IDS kamerou pod .NET.
Mam multi project solution kde jeden projekt je v C# a druhy v C++/CLR.
Potrebujem po stisknuti tlacitka v UI ktore je v C# inicializovat kameru priamo cez funkciu z kniznice od vyrobcu.

v UI volam
kód:

private void initButton_Click(object sender, System.EventArgs e)
{
        int osid = cameraSample.InitCamera(pictureBox.Handle.ToInt32());
        this.initButton.Text = osid.ToString();
}


co je c++ metoda v druhom projekte (prepojene je to v poriadku, parametre preda bez problemov, aj vrati hodnotu)

kód:

int CameraSample::InitCamera(int handleWindow)
{
   HIDS cameraHandle = (HIDS) 0;
   HWND displayWindowHandle = (HWND) handleWindow;
   
   [color=red]int camera = is_InitCamera(&cameraHandle,displayWindowHandle);[/color]

   return camera;
}

,kde HWND je nejaky struct definovany vo WinDef.h a HIDS su definovane v header file, ktory bol ku kamere (s tym tiez nieje problem)

Samotnu funkciu is_InitCamera() popisuje v maunlae vyrobca takto
kód:

[b]Syntax[/b]
INT is_InitCamera (HIDS* phf, HWND hWnd)

[b]Description[/b]
is_InitCamera() starts the driver and establishes the connection to the camera. After
successful initialization, this function assigns the camera handle. All subsequent functions require
this handle as the first parameter.
When using Direct3D for image display, you can pass a handle to the output window (see also
How To Proceed: Image Display).



Neustale vsak dostavam na ten cerveno vyznaceny riadok tento error
kód:

Error   1   error C2664: 'is_InitCamera' : cannot convert parameter 1 from 'cli::interior_ptr<Type>' to 'HIDS *'   c:\Users\*****\Documents\Visual Studio 2008\Projects\CameraSample\CameraSampleApp\CameraSampleApp.cpp   18   CameraSampleApp



Co som googlil radili pouzit pre deklaraciu toho HIDS triedu pin_ptr<TYPE>, ale neslo mi to ani s tym. Vraj je to nejaky problem s GC, alebo co. Paradoxne na tom je, ze uz raz som to mal v stave ked to islo a dokonca ta funkcia vratila IS_SUCCES, lenze som bol nespokojny s tym, ako to je napisane, tak som tu upravil, bohuzial uz niet cesty spat

Prosim o radu ako tam tie parametre spravne napasovat. Skusal som rozne variacie.

Napriklad ked tam hodim
kód:

int camera = is_InitCamera(0,displayWindowHandle);

,tak nedostanem error ale vrati IS_NO_SUCCES, takze tie parametre tam zrejme neboli take ake by mali.

EDIT:
V manuale je
kód:

Code Sample
//Open camera with ID 1

HIDS hCam = 1;

INT nRet = is_InitCamera (&hCam, NULL);




Vopred dakujem za akukovek radu a prajem pekne velkonocne sviatky
Zobraziť informácie o autoroviOdoslať súkromnú správuICQZobraziť autorove WWW stránky
Zobraziť príspevky z predchádzajúcich:    
Zaslať odpoveď
Nemôžete pridávať nové témy do tohto fóra.
Nemôžete odpovedať na témy v tomto fóre.
Nemôžete upravovať svoje príspevky v tomto fóre.
Nemôžete mazať svoje príspevky v tomto fóre.
Nemôžete hlasovať v tomto fóre.

Powered by phpBB 2.x.x © 2005 - 2012 PCforum, webhosting by WebSupport, edited by JanoF

SEO - optimalizácia pre vyhľadávače

Freebsd