Click here to Skip to main content
15,906,285 members
Home / Discussions / C#
   

C#

 
Question[Message Deleted] Pin
jetspike14-Mar-09 10:49
jetspike14-Mar-09 10:49 
GeneralRe: Accessing datatable.rows on Form1 from From2 Pin
Luc Pattyn14-Mar-09 11:19
sitebuilderLuc Pattyn14-Mar-09 11:19 
AnswerRe: Accessing datatable.rows on Form1 from From2 Pin
Christian Graus14-Mar-09 11:51
protectorChristian Graus14-Mar-09 11:51 
QuestionImage Problem Pin
reza assar14-Mar-09 9:20
reza assar14-Mar-09 9:20 
AnswerRe: Image Problem Pin
Christian Graus14-Mar-09 9:31
protectorChristian Graus14-Mar-09 9:31 
AnswerRe: Image Problem Pin
Mohammad Dayyan14-Mar-09 11:25
Mohammad Dayyan14-Mar-09 11:25 
Questiondisplay image from SQL Server into Picture control Pin
Jassim Rahma14-Mar-09 7:31
Jassim Rahma14-Mar-09 7:31 
AnswerRe: display image from SQL Server into Picture control Pin
Luc Pattyn14-Mar-09 7:39
sitebuilderLuc Pattyn14-Mar-09 7:39 
AnswerRe: display image from SQL Server into Picture control Pin
Giorgi Dalakishvili14-Mar-09 7:43
mentorGiorgi Dalakishvili14-Mar-09 7:43 
AnswerRe: display image from SQL Server into Picture control Pin
Xmen Real 14-Mar-09 8:10
professional Xmen Real 14-Mar-09 8:10 
GeneralRe: display image from SQL Server into Picture control Pin
Jassim Rahma15-Mar-09 8:43
Jassim Rahma15-Mar-09 8:43 
GeneralRe: display image from SQL Server into Picture control Pin
Xmen Real 15-Mar-09 15:36
professional Xmen Real 15-Mar-09 15:36 
QuestionDynamic buttons in flowlayout panel Pin
Jon Henry14-Mar-09 7:08
Jon Henry14-Mar-09 7:08 
AnswerRe: Dynamic buttons in flowlayout panel Pin
N a v a n e e t h14-Mar-09 7:42
N a v a n e e t h14-Mar-09 7:42 
GeneralRe: Dynamic buttons in flowlayout panel Pin
Jon Henry14-Mar-09 7:59
Jon Henry14-Mar-09 7:59 
QuestionMS remote for Media Player Pin
electriac14-Mar-09 6:29
electriac14-Mar-09 6:29 
QuestionFormat date to system timezone Pin
Tony Pottier14-Mar-09 6:24
Tony Pottier14-Mar-09 6:24 
AnswerRe: Format date to system timezone Pin
Christian Graus14-Mar-09 8:15
protectorChristian Graus14-Mar-09 8:15 
QuestionPInvoke void * parameter Pin
Jason McPeak14-Mar-09 5:32
Jason McPeak14-Mar-09 5:32 
AnswerRe: PInvoke void * parameter Pin
Luc Pattyn14-Mar-09 5:56
sitebuilderLuc Pattyn14-Mar-09 5:56 
GeneralRe: PInvoke void * parameter Pin
Jason McPeak14-Mar-09 7:02
Jason McPeak14-Mar-09 7:02 
GeneralRe: PInvoke void * parameter Pin
Luc Pattyn14-Mar-09 7:30
sitebuilderLuc Pattyn14-Mar-09 7:30 
Hi,

1.
yes "fixed" is one way to pin down something, for as long as you are inside its code block.

2.
it is strange to see a Capture() method without any outputs. You should either provide a "string filename" parameter if you want it to save to disk, or return something "... int[] Capture(...)" if you want your app to work on it.
I would suggest something along these lines (note the use of "code block" button resulting in PRE tags which gives a monospaced font and preserves formatting):
public unsafe int[] Capture( Int32 bufferSize ) {
    int[] buf = new int[ bufferSize ];
    fixed ( int* ImageBuffer = buf ) {
        if ( !DcamCaptureReverseX( ImageBuffer, bufferSize ) ) throw new DCamLIBException( this );
    }
    return buf;
}


3.
Once the native world is done with your buffer, it does not need the pinning; and the managed code can operate on it without restrictions, e.g. save it to disk.

4.
remarks:
- it is unusual, and probably not so good, to have exceptions without a string argument, passing some message in.
- there would be no need to zero out the buffer, managed arrays are always zero-filled automatically upon creation; the CLR designers have chosen to do so, in order to eliminate random behavior when you forget to fill it up and start using whatever happens to be there.

5.
are you sure int[] is right? that indicates 32 bit per pixel; would be fine for color images, and probably overkill (and memory waste) for grayscale. Some native C/C++ systems have 16-bit int, in managed languages int is 32-bit.

Smile | :)

Luc Pattyn [Forum Guidelines] [My Articles]

- before you ask a question here, search CodeProject, then Google
- the quality and detail of your question reflects on the effectiveness of the help you are likely to get
- use the code block button (PRE tags) to preserve formatting when showing multi-line code snippets


GeneralRe: PInvoke void * parameter Pin
Jason McPeak14-Mar-09 8:16
Jason McPeak14-Mar-09 8:16 
GeneralRe: PInvoke void * parameter Pin
Luc Pattyn14-Mar-09 9:10
sitebuilderLuc Pattyn14-Mar-09 9:10 
GeneralRe: PInvoke void * parameter Pin
Jason McPeak14-Mar-09 14:10
Jason McPeak14-Mar-09 14:10 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.