powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / проблема с импортом dll c++
3 сообщений из 3, страница 1 из 1
проблема с импортом dll c++
    #38488722
DoctorZelen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
есть длл, написанная на с++.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
#ifndef _VaiPPQMClients_CLIENTBASE_H
#define _VaiPPQMClients_CLIENTBASE_H

#using <system.dll>
#using <vai.core.dll>

using namespace System;
using namespace System::ComponentModel;
using namespace System::Runtime::Serialization;
using namespace System::IO;

class MWclient;
namespace Vai{ namespace PPQM { namespace Clients
{
  
  [Serializable]
  public __gc class ClientEventArgs : public System::EventArgs
  {
    public:
      __value enum EventReason {evUnknown = -1, evStart = 1, evStop = 2, evAsync = 3, evNotify = 4, evError = 5};

    protected:
      Object*       _Data;
      EventReason   _Type;

    public:
      ClientEventArgs(Object* data);
      ClientEventArgs(Object* data, EventReason type);

      __property Object* get_Data();
      __property void set_Data(Object* value);

      __property EventReason get_Type();
      __property void set_Type(EventReason value);
  };

  public __delegate void ClientEventHandler(Object* sender, ClientEventArgs* e);

  [Serializable]
  public __gc  class  ClientBase : public Vai::Core::IFacilityProvider
  {
    public:
      __gc class ClientAsyncData
      {
          protected:
          Object*               _Data;
          DateTime              _TimeStamp;
          Delegate*             _Handler;
          ClientBase*           _Client;

        public:
          ClientAsyncData(ClientBase* client, ClientEventHandler* handler, Object* data);

          __property Object* get_Data() {return _Data;}
          __property DateTime get_TimeStamp() {return _TimeStamp;}
          __property Delegate* get_Handler() {return _Handler;}
          __property ClientBase* get_Client() {return _Client;}
      };
    protected:
      long                _ClientId;
      String*             _Url;
      MWclient*         _Handle;
      IFormatter*       _FormaterXML;
      IFormatter*       _FormaterBIN;
      String*             _Facility;
      String*             _FacilityTyp;
      Object*            _LockInstance;
      ISynchronizeInvoke* _SynchronizingObject;

      virtual  ~ClientBase();
      virtual bool  Connect();
      virtual void OnEvent(Object* sender, ClientEventArgs* e);

      virtual __event ClientEventHandler* Start;
      virtual __event ClientEventHandler* Stop;
      virtual __event ClientEventHandler* Async;
      virtual __event ClientEventHandler* Notify;
      virtual __event ClientEventHandler* Error;

  public:

      ClientBase(String* facility, String *typ, IFormatter* formaterXml, IFormatter* formaterBin);

      virtual bool Connect(String* url);
      virtual bool Connect(String* url, bool doConnect);
      virtual bool GetReflectionData ();
      virtual bool Disconnect();
      virtual Object* Call(String* functionName, int timeout, [ParamArrayAttribute] Object* parameters[], String **reconnect);
      virtual Object* CallRawIn(String *rawXmlIn, int timeout);
      virtual String* CallRawOut(String* functionName, int timeout, [ParamArrayAttribute] Object*   parameters[]);
      virtual String* CallRawInRawOut(String *rawXmlIn, int timeout);
      virtual DateTime OidGetTime (String *oid);
      virtual int     OidGetType (String *oid);
      virtual unsigned int OidGetDescriptor (String *oid);
      virtual void CallAsync(String* functionName, Object* data, ClientEventHandler* async, [ParamArrayAttribute] Object*   parameters[]);
      virtual void CallAsync(String* functionName, ClientEventHandler* async, [ParamArrayAttribute] Object*   parameters[]) {return CallAsync(functionName, 0, async, parameters);};
      virtual bool RegisterEvent(int eventId, Object* data, ClientEventHandler* async);
      virtual bool RegisterEvent(int eventId, ClientEventHandler* async);
      virtual bool UnregisterEvent(int eventId);

      virtual void DoEvent(Object* sender, ClientEventArgs* data);

      __property bool get_IsConnected();
      __property ISynchronizeInvoke* get_SynchronizingObject();
      __property void set_SynchronizingObject(ISynchronizeInvoke* value);
      __property String* get_Facility();
      __property void set_Facility(String* value);
      __property MWclient* get_Handle() {return _Handle;}
      __property IFormatter* get_FormaterXML() {return _FormaterXML;}
      __property IFormatter* get_FormaterBIN() {return _FormaterBIN;}
      __property long get_ClientId() {return _ClientId;}
      __property String* get_Url() {return _Url;}

      static long         _AsyncCounter   = 0;
      static Hashtable*   _AsyncHandlers  = new Hashtable();
      static Hashtable*   _NotifyHandlers = new Hashtable();
	 // private:
	 // CUnmanagedTestClass* m_pUnmanagedTestClass;

  };
}}
} 
#endif



проблема возникает при импорте в С#, вылазиет ошибка: Невозможно загрузить файл или сборку или один из зависимых от них компонентов.
Вообщем как мне все это импортировать в проекте C# (с управляемым кодом практически не работал)?
длл прекрасно работала в 2003 студии.
...
Рейтинг: 0 / 0
проблема с импортом dll c++
    #38488779
beg-in-er
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DoctorZelen,

это ManageC а не С++

1. как вы импортируете
2. посмотрите целевую платформу 32/64
...
Рейтинг: 0 / 0
проблема с импортом dll c++
    #38488792
DoctorZelen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
все, проблема решена, тему можно удалить.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / проблема с импортом dll c++
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]