- ベストアンサー
関数の呼び出し
nabezo-の回答
- nabezo-
- ベストアンサー率50% (2/4)
補足に書かれているのはコンパイル時のエラーですよね? 単に型宣言してないだけは??? 普通はサブルーチンコールと同じですから問題ないはずですが、 何か特殊なことをしていますか???
関連するQ&A
- DLL の中の関数呼び出し
Windows NT workstation Ver4.0 の上で、ボーランドC++ Ver5 を使って、owl を使ったソフトを作っています。 メーラーを作ろうとして、blatj のソースコードを組み込んでいます。 その中で、gensock.dll を読み込んで、その中の関数を呼び出すところがあるのですが、関数のエイトりーポイントが NULL で返ってきます。 自作した他の DLL については、関数の呼び出しは、 順調なのですが、この gensock.dll については上手くゆかないのです。 そこで、 ボーランドのDLLと、マイクロソフトのDLLでは 呼び出し方にどのような違いがあるのでしょうか? Win API を使ってみても TModule を使ってみても 同じような現象が起きています。 解決方法は gensock.dll のソースコード を使ってボーランドのコンパイラでDLLを作り直す以外には無いのでしょうか?
- ベストアンサー
- C・C++・C#
- 関数呼び出しについて
VB6.0でSubとFunctionの使い分けに迷っています。 ・関数呼び出しの使い分けについて教えていただけますか? ・どちらもcallで呼び出せるのでしょうか? ・関数はcallを使わなければならないのでしょうか?
- ベストアンサー
- Visual Basic
- API関数とDLL関数
API関数とDLL関数って同じものですか? ネットで調べると・・・ API関数=Win API→ひとつひとつの関数(単独で機能するプログラムコード の塊)。 API関数はdllファイルの中にある関数をさす。 とのようなことが書いてあります。つまり、DLL関数(私の認識であると、.dllファイルの中にある関数)であり、この関数はAPI関数と同定義と認識しています。 まだまだ初心者で、この認識があっているか確信がもてません。 どうか教えていただけないでしょうか?? お願いいたします。
- 締切済み
- その他([技術者向] コンピューター)
- VBAでDLL呼び出し
VBAに関する使用方法をお教えください。 例えばsheet1のA1の数値をVBC++で作成したDLLファイル内にある関数に引数として渡したいのですが、どうすればよいでしょうか? (どう記述すればよいのでしょうか) 初心者につき、分かりやすく説明をして頂ければ幸いです。 VBC++で作成したDLLファイル名 testdll.dll testdll.dll内で定義してある関数名はtest_sendです 以上、宜しくお願い致します。
- ベストアンサー
- Visual Basic
- API関数(DLL)の呼び出しにおいて、DLLの格納場所は?
お世話になります。 VB.NETでAPI関数を呼び出す場合にまず、API関数を格納しているDLLを宣言しなけれならないと下記URLにあります。 (http://www.atmarkit.co.jp/fdotnet/dotnettips/024w32api/w32api.html) (a)DllImport属性を利用する方法 <System.Runtime.InteropServices.DllImport("DLL名")> _ Function API関数名(仮引数) End Function (b)Declareステートメントを利用する方法 Declare Function API関数名 Lib "DLL名" (仮引数) そこで、質問なのですが、(a)、(b)どちらの方法で実現する場合においても、DLLの格納場所はC:\Windows\System32でないといけないのでしょうか?(実際にコーディングしてもSystem32フォルダにないとエラーになってしまいます。) 任意のフォルダにDLLを格納し、そこを参照できるようにできるのでしょうか? また、一般常識としてDLLはSystem32フォルダに格納しておかないといけないものなのでしょうか? 以上、よろしくお願いいたします。
- ベストアンサー
- Visual Basic
- 関数からの関数の呼び出しは
下記のようなIF文の中で「URL」がカラならsend_check()を実行させたいのですが、→のところにどのように記載したらよいか教えていただけないでしょうか。 また、関数から関数へいくらでも呼び出していけるものですか。質問の仕方もよくわからないのですが、よろしくお願いいたします。 function submitCheck(){ if (document.mail.url.value==""){ →→→→ return false;} else return true; }
- ベストアンサー
- JavaScript
- VBAからDLL呼び出し
vbaからC++で作成したDllファイル内関数を呼び出し、使用しているのですが、dllファイル内に記述してあるprintfが出力できません。 何か良い方法があるのでしょうか?
- ベストアンサー
- C・C++・C#
- DLLの関数呼び出しで引数があるとフリーズしてしまう。
はじめまして、C言語勉強中の初心者です。 現在、DLLに定義されている関数を呼び出すことを試していますが、うまくいかないので質問させて頂きました。 DLLには2つの関数が定義されています。 1.void Hello() 2.void HelloEx(char *pval); 1の関数を呼び出す場合は異常なく終了するのですが、2の関数を呼び出すと、フリーズしてしまいます。 フリーズする原因が分からないので、教えて頂ければと思います。 以下にソースを掲載します。 因みにコンパイラはBCC5.5.1を使用しています。 ***************************************************** DLL(Hello.c) [bcc32 -WD Hello.c] ***************************************************** #include <windows.h> #include <stdio.h> __declspec(dllexport) void CALLBACK Hello(void) { printf("Hello!\n"); } __declspec(dllexport) void CALLBACK HelloEx(char *pVal) { printf("Hello!%s\n", pVal); } ***************************************************** EXE(HelloTest.c)[bcc32 -L HelloTest.c] ***************************************************** #include <windows.h> #include <stdio.h> typedef void (*Hello)(void); typedef void (*HelloEx)(char*); int main(void) { HMODULE hMod; Hello func; HelloEx funcEx; hMod = LoadLibrary( "Hello.dll" ); if(!hMod) return FALSE; func = (Hello)GetProcAddress( hMod, "Hello"); if(!func) return FALSE; funcEx = (HelloEx)GetProcAddress( hMod, "HelloEx"); if(!funcEx) return FALSE; func(); funcEx("World"); FreeLibrary(hMod); return 0; } *********************************************** 以上
- ベストアンサー
- C・C++・C#
補足
cpp内に関数を書く順番を変えました。 AからBを呼ぶ場合は、 Aの下にBの関数を書かなければならないんですね。(--; ゴメンなさい。 呼び出すことはできました。 (コンパイルはとおりました) が、上手く処理できてないみたいです。 期待する値が取得できません。 VBからBの関数を呼び出した場合には、 期待する値が返ってくるんですが…。 うーん…。