.NET Framework クラス ライブラリを使いたい – プログラミング – Home

通知
すべてクリア

[解決済] .NET Framework クラス ライブラリを使いたい


lie
 lie
(@lie)
ゲスト
結合: 19年前
投稿: 5
Topic starter  

.net2003でMFCダイアログアプリを作ってます。
.NET Framework クラス ライブラリを使いたいのですが可能ですか?
例えばApplicationクラスのget_UserAppDataPathを使うとかできますか?


引用未解決
トピックタグ
Blue
 Blue
(@Blue)
ゲスト
結合: 20年前
投稿: 1467
 

たしか、アンマネージドからはマネージドクラスは呼べなかったような。

SHGetSpecialFolderPath関数でCSIDL_LOCAL_APPDATAを指定するととれるかも。
http://www.kaede-software.com/2005/01/application_dat.html


返信引用
lie
 lie
(@lie)
ゲスト
結合: 19年前
投稿: 5
Topic starter  

レスありがとうございます。

.netアプリがマネージドでMFCがアンマネージドってことですね。
呼べないというのはなぜなんでしょうか?同じC++なのに?
CからActiveXとかが無理なのと同じ理屈なんでしょうか?
C++内で別言語にわかれてるのでしょうか?


返信引用
kure
 kure
(@kure)
ゲスト
結合: 19年前
投稿: 48
 

> 同じC++なのに

同じではありません。
Managed C++はMicrosoftの独自拡張です。
VS2005からはC++/CLIっていう更に別物になっちまいます。

呼べない理由ですが、
そもそも.NETのバイナリと普通のWin32のバイナリは全くの別物になっています。
.NETはILという中間言語に落とされたバイナリが生成され、
JITコンパイラによって実行時に動的にコードが翻訳されます。
従ってUnmanagedからManagedを呼ぶには、まずこの問題をクリアしなければなりません
し、
他にもGCの問題や、Managedなライブラリ群の初期化なども必要となってくるでしょう。
それらすべてをクリアできさえすればManagedなコードを呼び出すことは
できるのかもしれません。


返信引用
ITO
 ITO
(@ITO)
ゲスト
結合: 22年前
投稿: 1235
 

参考です。
msdnの「C++ マネージ拡張プログラミング」
http://msdn.microsoft.com/library/ja/default.asp?frame=true


返信引用
ITO
 ITO
(@ITO)
ゲスト
結合: 22年前
投稿: 1235
 

リンク無理だったみたいです。
 msdnのlibrary「C++ マネージ拡張プログラミング」
を探してみてください。


返信引用
aetos
(@aetos)
Noble Member
結合: 5年前
投稿: 1480
 

> アンマネージドからはマネージドクラスは呼べなかったような。

ただし逆はできますから、マネージドアプリから MFC を使うことは可能です。


返信引用
YuO
 YuO
(@YuO)
ゲスト
結合: 22年前
投稿: 320
 

> .net2003でMFCダイアログアプリを作ってます。
> .NET Framework クラス ライブラリを使いたいのですが可能ですか?

単純に/clrスイッチつければアンマネージとマネージの混在が可能です。

まぁ,とりあえずは
ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.1041/vcmex/html/vcconManagedTypesMFC.
htm
だけが問題ですかね。


返信引用
lie
 lie
(@lie)
ゲスト
結合: 19年前
投稿: 5
Topic starter  

みなさんありがとうございました。
教えてもらったとこで勉強してみます。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました