2012-01-04 14 views
7

Geçtiğimiz günlerde a problem on the midas'u keşfettim ve sorunu çözdüm, şimdi MidasLib'i midas.dll kullanmak istemiyorum ve sadece kaynak kod ile yapıyorum DLL.midas kaynak kodundan midas.obj nasıl oluşturulur

Kaynak C++ ve bunun hakkında çok az bilgiye sahibim. MidasLib.pas'in dahili olarak midas.obj kullandığını biliyorum, bu yüzden midalarımın uygulamasına statik olarak bağlanması için onu oluşturmam gerekiyor. C++ Builder'da nasıl yapılır? (XE)

+0

Kod yeniden derlenmeye çalışmak yerine bellekte düzeltme eki daha iyi olabilir. Eğer bu 255'i hafızada bulabilirseniz, yapmanız gereken tek şey oldukça VirtualProtect tadilatıdır ve altın olacaktır. –

+0

@DavidHeffernan Yeah! Bu gerçekten en iyi form olurdu, ancak nasıl bulunur: 1 - #define declaration; 2 - değiştirilecek hat? –

+0

@DavidHeffernan Yani, kaynak koddan midas.obj oluşturmak için YOK WAY var ???? –

cevap

1

C++ kodunu derlediğinizde, derleyici sahip olduğunuz her .CPP/.C dosyası için bir .OBJ dosyası oluşturur ve bunları bilgisayarınıza bir yere kaydeder. Çoğu durumda, tek bir EXE veya DLL dosyasına katılmak için tüm bu .OBJ dosyalarında bir bağlayıcı çalıştıracağız, ancak sizin durumunuzda bu sonuçlara ihtiyacınız yoktur. C++ Builder'ınız, çoğu programlama IDE'si gibi, hem derleme hem de bağlantıyı otomatik olarak yapıyor.

Sadece .OBJ'yi istiyorsanız, proje klasörünüzdeki C++ Builder'ın .OBJ dosyalarını (derleme ve bağlantı arasında ara adım olan "ara çıkış" olarak adlandırılan) yerleştirmesi gerekir. . Yani midas.obj adlı bir çıkış dosyası üreten midas.cpp veya midas.c adlı bir kaynak dosyanız olması gerekir.

+0

Evet! Aradığım cevap buydu. Ancak maalesef Embarcadero, bir midas.cpp sağlamaz, bu yüzden midas.obj yok. Ama ben David Heffernan yaklaşımını takip ettim ve beklenen davranışı elde etmek için orijinal midas.obj üzerinde bir yama yaptım. Çok teşekkür ederim. Sadece biraz daha açıklamak için: .obj dosyası C/C++ gibi .cpp dosyası için .dcu dosyası Delphi'de .pas dosyası içindir;) –

+0

İşte benim düzeltmem (Portekizce, üzgünüm): https://sites.google.com/site/carlosfeitozafilho/artigos/comoobtermensagensdeerroereconcileerrorcommaisde255caracteres –

İlgili konular