Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.07.2007, 09:45   #1
Владислав
 
Регистрация: 04.07.2007
Сообщений: 3
Восклицание Как можно вставить код C++ в Delphi 7

Здраствуйте!
Появилась необходимость вставлять С++ в Delphi 7, как это реалезуется?
Если не сложно помогите перевести модуль C++ на Pascal:
вот ссылка модуля Модуль
Если кто нить работал сервером mail agent'а, помогите с инфой.
Спасибо.
Владислав вне форума Ответить с цитированием
Старый 04.07.2007, 13:05   #2
mrandrey
Форумчанин
 
Регистрация: 30.03.2007
Сообщений: 124
По умолчанию

Я тебе посоветую решить єто через DLL. Создаешь в С++ DLL, а потом используешь её в програме Delphi.
Тут без 100г не розберешся.....
Спасибо не нужно, а на весы слева кликнуть не помешает!!!
mrandrey вне форума Ответить с цитированием
Старый 04.07.2007, 13:43   #3
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Можно (попробовать) перегнать с-шные coff (*.obj) в борландовский obj и линковать в делфи

{$L c_obj.obj}
procedure proceDura; stdcall; external;
...

1 - http://www.wasm.ru/forum/files/52809227__COFF2OMF.zip
2 - http://www.anticracking.sk/EliCZ/export/OMF2D.zip
(сначала первую, а то ,что она выдаст, скормить второй)

--

Вот кусок из мануала
Цитата:
3) If Object.obj is in COFF, convert it to OMF.

COFF2OMF Object.obj

(COFF2OMF is a utility that converts COFF file to OMF file. This utility is shipped
with the Digital Mars C/C++ package (www.digitalmars.com). Do not confuse it with tool
with the same name that is present in Borland C++ package and that serves for converting
import libraries.)

4) Convert OMF to widely acceptable OMF.

OMF2D Object.obj /OLNames.opt /OENames.opt >Object.dh

(It is recommended to use DFix.bat. Set the right paths in this file.)

5) Add files to Delphi project:
{$I Object.dh}
{$L Object.obj}
пыщь

Последний раз редактировалось JTG; 04.07.2007 в 13:45.
JTG вне форума Ответить с цитированием
Старый 04.07.2007, 14:02   #4
Владислав
 
Регистрация: 04.07.2007
Сообщений: 3
По умолчанию

Попробую...
Владислав вне форума Ответить с цитированием
Старый 20.03.2012, 15:49   #5
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Ребят, вы чего? Какие DLL, какой obj? Это .h заголовочники для бинарных структур, отправляемых по сети.

Цитата:
Появилась необходимость вставлять С++ в Delphi 7, как это реалезуется?
Как в мерседес вставить запчасти от тойоты? Никак. Надо искать аналоги.

Так же и здесь. Берёшь твой proto.h, читаешь:

Код:
#ifndef MRIM_PROTO_H
#define MRIM_PROTO_H

#include <sys/types.h>
и пишешь:

Код:
unit proto;

{$A+}
{$Z4}

interface

uses
  Windows, Types;

implementation

end.
читаешь:

Код:
#define PROTO_VERSION_MAJOR     1
#define PROTO_VERSION_MINOR     7
#define PROTO_VERSION ((((u_long)(PROTO_VERSION_MAJOR))<<16)|(u_long)(PROTO_VERSION_MINOR))
и пишешь:

Код:
const
  PROTO_VERSION_MAJOR = 1;
  PROTO_VERSION_MINOR = 7;
  PROTO_VERSION: DWORD = (PROTO_VERSION_MAJOR shl 16) or PROTO_VERSION_MINOR;
читаешь:

Код:
#define PROTO_MAJOR(p) (((p)&0xFFFF0000)>>16) 
#define PROTO_MINOR(p) ((p)&0x0000FFFF)
и пишешь:

Код:
function PROTO_MAJOR(P: DWORD): DWORD;
function PROTO_MINOR(P: DWORD): DWORD;

implementation

function PROTO_MAJOR(P: DWORD): DWORD;
begin
  Result := P shr 16;
end;

function PROTO_MINOR(P: DWORD): DWORD;
begin
  Result := P and $FFFF;
end;
и так далее...
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 20.03.2012, 15:54   #6
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

Цитата:
Сообщение от GunSmoker Посмотреть сообщение
Ребят, вы чего? Какие DLL, какой obj? Это .h заголовочники для бинарных структур, отправляемых по сети.
,................
............
Посмотрите когда последнее сообщение было в теме))
vovk вне форума Ответить с цитированием
Старый 20.03.2012, 15:56   #7
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

O_O

Блин, как так? У меня эта тема была показана в начале раздела как новая.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 20.03.2012, 20:05   #8
3D Hunter
Сумрачная тень
Форумчанин
 
Аватар для 3D Hunter
 
Регистрация: 05.03.2009
Сообщений: 689
По умолчанию

Все новое - хорошо забытое старое, и хоть кого-то к этому тянет)
"ковыряю изнутри" (с)
3D Hunter вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как из delphi вставить символ в word? Sony Общие вопросы Delphi 10 04.09.2014 19:51
как вставить swf file в delphi Altera Компоненты Delphi 4 18.02.2008 20:12
Как вставить HTML страницу в Delphi приложение? Valdis Компоненты Delphi 7 03.10.2007 20:52
Как вставить панельку с кнопочками в редактор Delphi/Builder/Visual C++? Brother Win Api 1 02.10.2007 13:35