Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
컴퓨터 그룹 목록 구하기
도와주세요
델파이 헬퍼의 묻고 답하기 에서
렌으로 연결된 컴퓨터의 이름을 알 수 있는
소스를 구하였습니다.(김대영님....)
그런데 컴퓨터 그룹을 직접 입력하여야 합니다.
컴퓨터 그룹만을 리스트로 만들수는 없는 것입니까
가능하다면 가르쳐 주십시요.
부탁합니다.
1
COMMENTS
김영대
•
1999.05.26 18:33
강경중 wrote:
> 도와주세요
> 델파이 헬퍼의 묻고 답하기 에서
> 렌으로 연결된 컴퓨터의 이름을 알 수 있는
> 소스를 구하였습니다.(김대영님....)
> 그런데 컴퓨터 그룹을 직접 입력하여야 합니다.
> 컴퓨터 그룹만을 리스트로 만들수는 없는 것입니까
> 가능하다면 가르쳐 주십시요.
> 부탁합니다.
저기...
제 이름은 김영대인데요...
아마도 아래 소스를 말씀하시는것 같은데 ServerName 변수를
null 로 해서 GetNetworkUserName 를 호출해 보세요...
// 원도우즈 네트워크 환경의 컴퓨터 리스트 구하기 예제 소스
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
type
TForm1 = class(TForm)
LB_UserList: TListBox;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
ServerName: String;
function GetNetworkUserName: Boolean;
end;
PnetResourceArr = ^TNetResource;
var
Form1: TForm1;
implementation
{$R *.DFM}
function TForm1.GetNetworkUserName: Boolean;
var
NetResource: TNetResource;
Buf:Pointer;
Count, BufSize, Res: DWORD;
i: Integer;
lphEnum: THandle;
p: PnetResourceArr;
begin
GetNetworkUserName := False;
LB_UserList.Clear;
GetMem(Buf, 8192);
try
FillChar(NetResource, SizeOf(NetResource), 0);
NetResource.lpRemoteName := PChar(ServerName);
NetResource.dwDisplayType := RESOURCEDISPLAYTYPE_SERVER;
NetResource.dwUsage := RESOURCEUSAGE_CONTAINER;
NetResource.dwScope := RESOURCETYPE_DISK;
Res := WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_DISK, RESOURCEUSAGE_CONTAINER,
@NetResource,lphEnum);
if Res <> 0 then
System.Exit;
while true do
begin
Count := -1;
BufSize := 8192;
Res := WNetEnumResource(lphEnum, Count, Pointer(Buf), BufSize);
if Res = ERROR_NO_MORE_ITEMS then
System.Exit;
if (Res <> 0) then
System.Exit;
p := PNetResourceArr(Buf);
for i := 0 to Count - 1 do
begin
LB_UserList.Items.Add(p^.lpRemoteName + 2);
Inc(p);
end;
end;
Res := WNetCloseEnum(lphEnum);
If Res <> 0 then
raise Exception(Res);
finally
FreeMem(Buf);
GetNetworkUserName := True;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ServerName := '전산운영팀'; // 네트워크 환경의 작업그룹명
if GetNetworkUserName then
Showmessage('총 '+IntToStr(LB_UserList.Items.Count)+' 개의 개체가 있습니다')
else
Showmessage('정보를 얻지 못했습니다');
end;
end.
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
김종우
•
1999.05.26 18:57
3
COMMENTS
/
0
LIKES
Invalid BLOB handle in record buffer
신인재
•
1999.05.26 19:23
memo component의 Assign 메소드를 사용해 보세요... 김종우 wrote: > 안녕하십니까? > > 테이블의...
김종우
•
1999.05.26 19:51
신인재 wrote: > memo component의 Assign 메소드를 사용해 보세요... > > 김종우 wrote: > > 안녕하...
신인재
•
1999.05.27 03:34
Memo1.Lines.Assign(query1.fields[4]); 이런 식으로 쓰면 될껍니다. 김종우 wrote: > 신인재 wrote: ...
simmy
•
1999.05.26 18:33
1
COMMENTS
/
0
LIKES
[급해요]레코드가 저장이 안되요.
redhead
•
1999.05.26 22:06
simmy wrote: > 프로그램이 실행되는 동안에는 레코드의 수정,저장,삭제 모두 잘 되는데, > 시스템을 종...
영이...
•
1999.05.26 17:47
2
COMMENTS
/
0
LIKES
table에서의 추출...
신호성
•
1999.05.27 00:34
영이... wrote: > table에 제품코드, 판매일자, 판매단가, 수량, 판매금액이 있습니다. > 그 중에서 코드...
한
•
1999.05.26 18:12
영이... wrote: > table에 제품코드, 판매일자, 판매단가, 수량, 판매금액이 있습니다. > 그 중에서 코드...
peter30
•
1999.05.26 12:51
1
COMMENTS
/
0
LIKES
이상한 파일이 생기고 속도가 느려요
이정욱
•
1999.05.26 15:11
아마도 TQuery가 조인을 할 때 임시 파일이 생기는것 같습니다. DBF파일이라면 BDE말고 상용 컴포넌트인 ...
조진희
•
1999.05.26 09:16
1
COMMENTS
/
0
LIKES
[급질문]퀵 레포트 출력할때...
전철호
•
1999.05.27 01:48
조진희 wrote: > 퀵 레포트 출력할때. run하기 전에 프리뷰하면 오른쪽 박스가 잘 나오는데 > run해서 ...
saint09
•
1999.05.26 08:45
1
COMMENTS
/
0
LIKES
TeeChart 또는 ChartFX 사용법 좀 알려주세요.
이정욱
•
1999.05.26 11:42
제가 아래에 분명 답변 해드렸는데요...? 아래를 찾아보세요. Chart 로 검색을 해보세요. saint09 wro...
한상훈
1999.05.26 07:36
0
COMMENTS
/
0
LIKES
quickreport
강경중
•
1999.05.26 07:17
1
COMMENTS
/
0
LIKES
컴퓨터 그룹 목록 구하기
도와주세요 델파이 헬퍼의 묻고 답하기 에서 렌으로 연결된 컴퓨터의 이름을 알 수 있는 소스를 구하였습니다.(김대영님....) 그런데 컴퓨터 그룹을 직접 입력하여야 합니다. 컴퓨터 그룹만을 리스트로 만들수는 없는 것입니까 가능하다면...
김영대
•
1999.05.26 18:33
강경중 wrote: > 도와주세요 > 델파이 헬퍼의 묻고 답하기 에서 > 렌으로 연결된 컴퓨터의 이름을 알 수...
이장욱
•
1999.05.26 06:01
1
COMMENTS
/
0
LIKES
Tcomm32 델파이3용 가지고 계신분....부탁드려요...
신인재
•
1999.05.26 06:53
아래는 델파이 슈퍼 페이지 주소입니다. 찾아보세요....comm32.zip이란 파일이 있더군요... http://sun...
이진우
•
1999.05.26 04:51
1
COMMENTS
/
0
LIKES
한번더 ..RX컴포넌트 -계산기요...
신인재
•
1999.05.26 06:58
Rx컴포넌트를 인스톨하면 인스톨된 디렉토리에 Unit Subdirectory에 RxCalc.pas 가 있습니다. 이진우...
이진우
•
1999.05.26 04:42
1
COMMENTS
/
0
LIKES
RX 계산기 컴포넌트 사이즈 문제 인데요..
이정욱
•
1999.05.26 11:39
없습니다... 이진우 wrote: > 전체가 아니라도 계산기의 버튼 사이즈만 어떻게 고칠려고 하는데... > ...
이진우
•
1999.05.26 04:39
1
COMMENTS
/
0
LIKES
StringGrid에서 셀을 합칠때는 어떻해야 하남요?
이정욱
•
1999.05.26 11:45
셀을 합치실 수는 없습니다. 수동으로 합치려는 셀들의 스트링들을 만들어서 셀(Row든 Column이든)을 없애...
이상석
•
1999.05.26 03:49
1
COMMENTS
/
0
LIKES
Database에서 가장 큰 값을 불러올라면?
신인재
•
1999.05.26 07:09
K := DMtwt.TblExam.FieldByName('No1').Asstring;//.AsInteger; 여기부분이 좀 이상하군요 쿼리에서...
이상석
•
1999.05.26 03:13
1
COMMENTS
/
0
LIKES
왜 저장이 않되는지 모르겠어요.
서형민
•
1999.05.26 06:08
이상석 wrote: > 안녕하세요, 시사영어사에 재직중에 있는 이상석입니다. > 다름이 아니오라 DB 컬럼을 ...
최덕환
•
1999.05.26 03:09
1
COMMENTS
/
0
LIKES
포인터에대한 질문입니다..(PPoint)
이정욱
•
1999.05.26 11:47
질문은 긴데.. 답변은 간단할것 같네요... 흐.. PPoint는 TPoint의 Pointer형입니다. PixelList.Item...
지니
1999.05.26 02:44
0
COMMENTS
/
0
LIKES
블록설정 색상설정은?
장영선
1999.05.26 02:32
0
COMMENTS
/
0
LIKES
sql에서 in을 사용하는 방법좀...알려주셔요...^^
july
1999.05.26 01:45
0
COMMENTS
/
0
LIKES
Date를 한글에서 영문으로 바꾸는 방법
김윤정
•
1999.05.26 00:19
2
COMMENTS
/
0
LIKES
Active Window의 Focus가 있는 콘트롤 Handle얻는법?
서형민
•
1999.05.26 06:02
김윤정 wrote: > 안녕하세요... > API를 공부하기 시작한지 얼마되지 않은 새내기입니다... > > 현재 ...
김윤정
•
1999.05.26 17:13
적어주신 코드는 해당 프로그램 안에서만 Active control을 찾을 수 있는것 같은데요... 저는 윈도우상의...
최석기
1999.05.25 23:22
0
COMMENTS
/
0
LIKES
Fax Print의 PrinterIndex???
강경중
1999/05/26 07:17
Views
196
Likes
0
Comments
1
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
> 도와주세요
> 델파이 헬퍼의 묻고 답하기 에서
> 렌으로 연결된 컴퓨터의 이름을 알 수 있는
> 소스를 구하였습니다.(김대영님....)
> 그런데 컴퓨터 그룹을 직접 입력하여야 합니다.
> 컴퓨터 그룹만을 리스트로 만들수는 없는 것입니까
> 가능하다면 가르쳐 주십시요.
> 부탁합니다.
저기...
제 이름은 김영대인데요...
아마도 아래 소스를 말씀하시는것 같은데 ServerName 변수를
null 로 해서 GetNetworkUserName 를 호출해 보세요...
// 원도우즈 네트워크 환경의 컴퓨터 리스트 구하기 예제 소스
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls;
type
TForm1 = class(TForm)
LB_UserList: TListBox;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
ServerName: String;
function GetNetworkUserName: Boolean;
end;
PnetResourceArr = ^TNetResource;
var
Form1: TForm1;
implementation
{$R *.DFM}
function TForm1.GetNetworkUserName: Boolean;
var
NetResource: TNetResource;
Buf:Pointer;
Count, BufSize, Res: DWORD;
i: Integer;
lphEnum: THandle;
p: PnetResourceArr;
begin
GetNetworkUserName := False;
LB_UserList.Clear;
GetMem(Buf, 8192);
try
FillChar(NetResource, SizeOf(NetResource), 0);
NetResource.lpRemoteName := PChar(ServerName);
NetResource.dwDisplayType := RESOURCEDISPLAYTYPE_SERVER;
NetResource.dwUsage := RESOURCEUSAGE_CONTAINER;
NetResource.dwScope := RESOURCETYPE_DISK;
Res := WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_DISK, RESOURCEUSAGE_CONTAINER,
@NetResource,lphEnum);
if Res <> 0 then
System.Exit;
while true do
begin
Count := -1;
BufSize := 8192;
Res := WNetEnumResource(lphEnum, Count, Pointer(Buf), BufSize);
if Res = ERROR_NO_MORE_ITEMS then
System.Exit;
if (Res <> 0) then
System.Exit;
p := PNetResourceArr(Buf);
for i := 0 to Count - 1 do
begin
LB_UserList.Items.Add(p^.lpRemoteName + 2);
Inc(p);
end;
end;
Res := WNetCloseEnum(lphEnum);
If Res <> 0 then
raise Exception(Res);
finally
FreeMem(Buf);
GetNetworkUserName := True;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ServerName := '전산운영팀'; // 네트워크 환경의 작업그룹명
if GetNetworkUserName then
Showmessage('총 '+IntToStr(LB_UserList.Items.Count)+' 개의 개체가 있습니다')
else
Showmessage('정보를 얻지 못했습니다');
end;
end.