Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8727849
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 13, 20262026-06-13T08:30:59+00:00 2026-06-13T08:30:59+00:00

How to pass a struct from C++ application to a C++ Win32 DLL? Would

  • 0

How to pass a struct from C++ application to a C++ Win32 DLL?

Would you please give me an example?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-13T08:31:00+00:00Added an answer on June 13, 2026 at 8:31 am

    You can pass a pointer because the DLL in windows are in the same address space as the program.

    Note however that the DLL interface stops there and you (normally) do not have a shared memory management and you cannot in general pass for example an std::vector and expect the DLL to be able to push_back new elements. The reason is that the DLL has in general its own memory manager and heap, separated from the one of the caller (after all DLL can be called from any language, not necessarily C++).

    Even if it may be surprising passing an std::map and having the DLL and only just reading it still may not work, because some containers in the standard library depends on “sentinels” and and these could be duplicated for the DLL too.

    In the above I used the term “in general” because the DLL may have some trickery to be able to share the memory management with the main process. For example microsoft MFC was designed to work properly around these DLL barriers since VC6 (but NOT the standard library!).

    You must also be sure that DLL and the main program are compiled with the exact same compiler and compiling options because otherwise even plain structures may have a different memory layout.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

From a method, I can pass a struct which contains an array of integers,
I am using a struct to pass to an unmanaged DLL as so -
i am trying to pass an array of struct exported from a c# library
I'm trying to pass a struct from one object to another. I have the
I am writing a multithreaded application and would like to pass around pointers to
I'm trying to pass a C struct from C++ into python as a numpy
I'm trying to pass pointers to two struct timevals to a function that would
In short: I want to monitor selected calls from an application to a DLL.
I'm writing a Win32-based application that displays jpeg images from a database. I picked
I want to pass an array of arbitrary struct pointers and a comparison function

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.