SHOJI's Code
仕事や趣味で書いた各種言語のプログラミングコード(エクセルVBA,PHP,C/C++,JavaScript等)、その他雑記。
アクセスアップ・SEO対策・検索エンジン登録
2006.06<<12345678910111213141516171819202122232425262728293031>>2006.08
SQLサーバーとのアクセス (EXCEL VBA)
現在EXCELとMSSQLを組み合わせて帳票を作成するシステムの設計を行っている。まず手始めにエクセルVBAからSQLサーバーにアクセスするサンプルと作ってみた。
[SQLサーバーとのアクセス (EXCEL VBA)]の続きを読む
テーマ:EXCEL - ジャンル:コンピュータ
塗り潰しのアルゴリズム (C言語)
昨日書いた記事をやはりC言語で書こうと思って書いたもの。
[塗り潰しのアルゴリズム (C言語)]の続きを読む
テーマ:プログラミング - ジャンル:コンピュータ
塗り潰しのアルゴリズム (EXCEL VBA)
あるポイントを指定し、そこが囲まれている範囲を塗り潰すというもの。エクセルVBAよりC言語などで書いたほうが良かったかも知れないが、手軽に試せるのでVBAにした。それと「VBAって再帰呼び出しできたっけ?」と思ったのでそのテストでもある。
[塗り潰しのアルゴリズム (EXCEL VBA)]の続きを読む
テーマ:EXCEL - ジャンル:コンピュータ
レイヤーを移動 (JavaScript)
以前、あるサイトを作ったときのそのトップページ。マップでガンガン画像を切り替えるような凝ったものを作った。そこまではいいんだけど、その後で「カウンター欲しいんですけど・・・」って依頼。その画像にCopyrightも含んでいるし、その下ってわけにも行かず、また画像をカウンターも含めてやり直すのも手間。結局レイヤーを作って画像の上にカウンターを持ってくることを思いついた。
[レイヤーを移動 (JavaScript)]の続きを読む
テーマ:HP作成 - ジャンル:コンピュータ
値をスワップ (C言語)
小ネタ・・・(^^;

例えば整数 a と b があったとして、その値をスワップ(a←→b)したいとき、普通は
c = a; a = b; b = c;
と、いう風に間にテンポラリの変数を使って処理するが、そういった変数を使用せずに、スワップする方法(ただし、整数限定)。
[値をスワップ (C言語)]の続きを読む
テーマ:プログラミング - ジャンル:コンピュータ
デバッガで実行されているかどうかを知る (C言語)
Visual C++でしか試していないが、とりあえずコードを載せる。
#include <windows.h>
#include <stdio.h>

int main()
{
HANDLE h = LoadLibrary("KERNEL32");

printf("Hello, ");

if( h )
{
FARPROC lpfn = GetProcAddress(h, "IsDebuggerPresent");
if( lpfn )
if( (*lpfn)() )
printf("debugging ");
FreeLibrary(h);
}

printf("world!");
}

[デバッガで実行されているかどうかを知る (C言語)]の続きを読む
テーマ:プログラミング - ジャンル:コンピュータ
スレッドの実験(続き) (EXCEL VBA)
前回の記事の続き。

CreateThread関数でコールしたスレッド内ではCランタイムライブラリが呼べないことを知った。ということでまず、次のようなDLLを作成。
#include <windows.h>
#include <process.h>

unsigned long
WINAPI
BeginThread(
void (*func)(void *),
unsigned stack,
void *param
)
{
return _beginthread(func, stack, param);
}

void
WINAPI
EndThread()
{
endthread();
}

[スレッドの実験(続き) (EXCEL VBA)]の続きを読む
テーマ:EXCEL - ジャンル:コンピュータ
スレッドの実験 (EXCEL VBA)
エクセルVBAスレッドが使えたらちょっと便利かも、と思いちょっと実験してみた。

まず、下のようなコードをちょっと走らせてみた。
Declare Function CreateThread Lib "KERNEL32" _
(ByVal lpThreadAttributes As Any, _
ByVal dwStackSize As Long, _
ByVal lpStartAddress As Long, _
ByVal lpParameter As Long, _
ByVal dwCreationFlags As Long, _
ByRef lpThreadId As Long) As Long

Declare Function CloseHandle Lib "KERNEL32" _
(ByVal hObject As Long) As Long

Declare Function WaitForSingleObject Lib "KERNEL32" _
(ByVal hHandle As Long, _
ByVal dwMilliseconds As Long) As Long

Declare Sub Sleep Lib "KERNEL32" _
(ByVal dwMilliseconds As Long)


Dim hThread As Long
Dim idThread As Long

Sub test()
Dim i As Long

For i = 1 To 10
hThread = CreateThread(0&, 0&, AddressOf ThreadProc, i, 0&, idThread)
Debug.Print "Handle=" & hThread, "Id=" & idThread

n = WaitForSingleObject(hThread, -1)
Debug.Print n

CloseHandle hThread
Next i
End Sub

Function ThreadProc(ByVal n As Long) As Long
For i = 1 To 10
Debug.Print Now() & " THREAD" & n & ":" & i
Next i
ThreadProc = 0
End Function


これが、走らないのだ。スレッド内の最初の一行を表示したところで固まってしまった。
[スレッドの実験 (EXCEL VBA)]の続きを読む
テーマ:EXCEL - ジャンル:コンピュータ
WritePrivateProfileInt関数 (C言語)
iniファイルからデータを読み出す関数として、GetPrivateProfileInt関数などがあるが、書く方はというとWritePrivateProfileString関数はあるのにWritePrivateProfileIntという関数はない。
不便なので、以前自前で作ったことがある。
[WritePrivateProfileInt関数 (C言語)]の続きを読む
テーマ:プログラミング - ジャンル:コンピュータ
ディスクのフォーマットダイアログを表示 (C言語)
以前、あるシステムのユーティリティとして、ディスクフォーマットダイアログを表示するプログラムを書いた。全ソースコードを載せたいと思う。
[ディスクのフォーマットダイアログを表示 (C言語)]の続きを読む
テーマ:プログラミング - ジャンル:コンピュータ
copyright © 2004-2006 SHOJI, Powered By FC2ブログ all rights reserved.
無料ホームページ アフィリエイト レンタルサーバー FC2ブログ 一戸建て