まずC++でこんな.dllを作る。仮にgreeting.dllとする。 #include <stdio.h> extern "C" { typedef const char* (*WhatDoYouSay)(); __declspec(dllexport) void Greeting(WhatDoYouSay callback) { printf("Greeting: %s\n",(*callback)()); } } この場合C#からの呼び出しは using System; using System.Runtime.Interopservices; class Program { delegate string WhatDoYouSay(); [DllImport("greeting.dll")] static extern void Greeting(WhatDoYouSay call