עבור לתוכן
View in the app

A better way to browse. Learn more.

HWzone

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

הדרכה ליצירת dll בC

Featured Replies

פורסם

שלום,

אני צריך ליצור dll שמקשר בין תוכנית שכותב משתמש מסויים לבין סימולטור (הוא כתוב הvb והוא כולל 7-סגמנט ,לדים ,מפסקים וכו'..)

בעיקרון אני צריך get ,set ,כלומר פונקציות שולחות\מקבלות נתונים מהסימולטור , ופונקציות in\out שיתקשרו עם התכנית שכתב המשתמש.

יש משהו ספציפי שאני צריך לדעת לגבי כתיבת dll ? איך אני מתחיל? זקוק להדרכה ..

תודה.

יום טוב.

פורסם

בגדול כתיבת DLL ב-C די דומה לכתיבת ספריה סטטית (DLL היא ספריה דינמית).

תתחיל בלכתוב ספריה רגילה.

האמת היא שיש עוד כמה עניינים ב-DLL שקשורים ל-multi thread ו-multi process, אבל אני מסופק שאתה צריך להתעסק עם זה.

תחפש באינטרנט מדריכים. (עבר הרבה מאוד זמן מאז שכתבתי DLL, ואני בטוח שכחתי לא מעט).

פורסם
  • מחבר

לא יצא לי לכתוב ספריות סטטיות עדיין.

אגב, אין מחלקות בC נכון? אני חייב להשתמש במבנים במקום מחלקות? או שאולי גם את זה אני לא צריך?

כמו שאמרתי, זה DLL די פשוט, הוא מקשר בין סימולטור שיצרתי בVB לבין תכנית שיכתוב משתמש מסויים. צריך 4 פונקציות בהן, 2 לקבלה/שליחה עם הסימולטור,והשתיים האחרות לתכנית.

עכשיו, את הפונקציות האלה ,אחרי שאני פותח פרוייקט > קובץ DLL , איפה אני כותב? יש לי 3 קבצים בSOURCE FILES , אחד בשם שיצרתי, השני DLLMAIN והשלישי STDAFX.

יש לי עוד שני קבצים ב HEADER, אני צריך לגעת בהם?

מתי אני צריך להשתמש בDLLEXPORT/DLLIMPORT ? האם זה קיים רק בC++ ?

מצטער על השאלות הNOOBיות.

תודה.

כתבתי בינתיים משהו. לדעתך זה יכול לעבוד ?

זה הHEADER

#ifndef Sim_dllHD_H
#define Sim_dllHD_H

#if defined DLL_EXPORT
#define DECLDIR __declspec(dllexport)
#else
#define DECLDIR __declspec(dllimport)
#endif

extern "C"
{
DECLDIR int Set( );
DECLDIR int In( );
DECLDIR void Get( );
DECLDIR void Out( );
}

#endif

וזה הSOURCE

#include "stdafx.h"
#include "Sim_dllHD.h"
#include <stdio.h>

#define DLL_EXPORT
extern "C"
{
DECLDIR int Set()
{

}

DECLDIR void Get()
{

}

DECLDIR int In()
{

}

DECLDIR int Out()
{

}
}

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.