PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
1030 | 98/03/25 10:50:06 | RE(1):自マシン名の取得がうまくかないのですが? By nari |
1025 | 98/03/25 05:44:45 | 自マシン名の取得がうまくかないのですが? By pochi |
カテゴリ:旧電子会議室
日付:1998年03月25日 10:50 発信者:nari
題名:RE(1):自マシン名の取得がうまくかないのですが?
私はGetComputerNameAは使用しておりませんが、他のWinAPIを使用したsourceを
compileしたcodeをWindows95, NT4で稼動させて不具合はでていません。
>外部関数で次のように定義をして自端末のマシン名を取得しようとしました。
>
> Function Long GetComputerNameA(REF string lpBuffer, REF int nsize) Library \"Kernel32.dll\"
GetComputerNameのPROTOTYPEは以下です。
BOOL GetComputerName(
LPTSTR lpBuffer, // address of name buffer
LPDWORD nSize // address of size of name buffer
);
ここでDWORDは
32 ビットの符号なし整数、またはセグメント アドレスとそれに関連するオフセット
ですので PBでは ULONG が当てはまります。
intは16bit符号付き整数型なので、まずは第二引数をULONGにしてみてください。
変数領域の境界がおかしくなっている可能性があります。
蛇足ですが、lpBuffer は nsize 分の領域割り当てされてますか?
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS (記載なし)
DBMS (記載なし)
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.