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.
손용구
•
1998.10.07 21:15
1
COMMENTS
/
0
LIKES
Image Lib 구입에대해
이정욱
•
1998.10.08 00:40
네. 안녕하세요? 원래 1170000원 입니다. 그러나 이번 행사기간 중에는 55만원 입니다. 감사합니다. ...
simmy
•
1999.05.26 18:33
1
COMMENTS
/
0
LIKES
[급해요]레코드가 저장이 안되요.
redhead
•
1999.05.26 22:06
simmy wrote: > 프로그램이 실행되는 동안에는 레코드의 수정,저장,삭제 모두 잘 되는데, > 시스템을 종...
이진수
•
1998.09.23 06:06
1
COMMENTS
/
0
LIKES
음...멀티미디어 부분에 관하여..
민성기
•
1998.09.23 10:50
안녕하세요... 민성기 입니다. 오디오 파형을 그리는 일은, 해 본 사람 말로는 '사람이 할 짓이 못된다'는...
영이...
•
1999.05.26 17:47
2
COMMENTS
/
0
LIKES
table에서의 추출...
신호성
•
1999.05.27 00:34
영이... wrote: > table에 제품코드, 판매일자, 판매단가, 수량, 판매금액이 있습니다. > 그 중에서 코드...
한
•
1999.05.26 18:12
영이... wrote: > table에 제품코드, 판매일자, 판매단가, 수량, 판매금액이 있습니다. > 그 중에서 코드...
이진수
•
1998.09.23 06:06
1
COMMENTS
/
0
LIKES
음...멀티미디어 부분에 관하여..
민성기
•
1998.09.23 10:50
안녕하세요... 민성기 입니다. 오디오 파형을 그리는 일은, 해 본 사람 말로는 '사람이 할 짓이 못된다'는...
peter30
•
1999.05.26 12:51
1
COMMENTS
/
0
LIKES
이상한 파일이 생기고 속도가 느려요
이정욱
•
1999.05.26 15:11
아마도 TQuery가 조인을 할 때 임시 파일이 생기는것 같습니다. DBF파일이라면 BDE말고 상용 컴포넌트인 ...
이진수
•
1998.09.22 22:38
1
COMMENTS
/
0
LIKES
progressiveBar 에 관하여....
이정욱
•
1998.09.23 00:46
만약 그라디언트 같이 하나의 프로그래스바에 색깔이 여러개 들어가는것은 기본적으로는 없습니다. 직접 만...
이진수
•
1998.09.22 22:38
3
COMMENTS
/
0
LIKES
progressiveBar 에 관하여....
조진희
•
1999.05.26 09:16
퀵 레포트 출력할때. run하기 전에 프리뷰하면 오른쪽 박스가 잘 나오는데 run해서 프린트 하면 오른쪽이...
이정욱
•
1998.09.23 00:46
만약 그라디언트 같이 하나의 프로그래스바에 색깔이 여러개 들어가는것은 기본적으로는 없습니다. 직접 만...
전철호
•
1999.05.27 01:48
조진희 wrote: > 퀵 레포트 출력할때. run하기 전에 프리뷰하면 오른쪽 박스가 잘 나오는데 > run해서 ...
saint09
•
1999.05.26 08:45
2
COMMENTS
/
0
LIKES
TeeChart 또는 ChartFX 사용법 좀 알려주세요.
김 종춘
•
1998.09.22 22:37
그동안 성의 있는 답변에 감사합니다... 너무 폐를 끼친것 같군요... procedure TMain_Form.TB_PrintClic...
이정욱
•
1999.05.26 11:42
제가 아래에 분명 답변 해드렸는데요...? 아래를 찾아보세요. Chart 로 검색을 해보세요. saint09 wro...
김 종춘
•
1998.09.22 05:29
2
COMMENTS
/
0
LIKES
정말 죄송합니다... 한 번만 더...
한상훈
•
1999.05.26 07:36
report작성시 field가 적으면 빈 공백이 너무 많이 남고 해서 작성을 다음과 같이 할려고 합니다. 회원...
이정욱
•
1998.09.22 08:41
네.. TGUID의 형태가 아니라 PGUID형태 이군요. PGUID형은 nil값을 대입 할 수 있습니다. 김 종춘 w...
강경중
•
1999.05.26 07:17
1
COMMENTS
/
0
LIKES
컴퓨터 그룹 목록 구하기
도와주세요 델파이 헬퍼의 묻고 답하기 에서 렌으로 연결된 컴퓨터의 이름을 알 수 있는 소스를 구하였습니다.(김대영님....) 그런데 컴퓨터 그룹을 직접 입력하여야 합니다. 컴퓨터 그룹만을 리스트로 만들수는 없는 것입니까 가능하다면...
김영대
•
1999.05.26 18:33
강경중 wrote: > 도와주세요 > 델파이 헬퍼의 묻고 답하기 에서 > 렌으로 연결된 컴퓨터의 이름을 알 수...
김 종춘
•
1998.09.22 05:29
1
COMMENTS
/
0
LIKES
정말 죄송합니다... 한 번만 더...
이정욱
•
1998.09.22 08:41
네.. TGUID의 형태가 아니라 PGUID형태 이군요. PGUID형은 nil값을 대입 할 수 있습니다. 김 종춘 w...
김용식
•
1998.09.22 02:45
3
COMMENTS
/
0
LIKES
[Wise Installation] 설치시에 덮어써진 파일 처리...
이장욱
•
1999.05.26 06:01
예전에 있던 POP시스템 소스를 가지고 공부를 하던중 아무리 찾아도 이 놈의 Tcomm32가 없다고 밥달라고 ...
이정욱
•
1998.09.22 03:51
설치할 파일을 더하신 후 아래에 Detail이라는 버튼이 있습니다. 그곳에서 Replace Existing File항목에서...
신인재
•
1999.05.26 06:53
아래는 델파이 슈퍼 페이지 주소입니다. 찾아보세요....comm32.zip이란 파일이 있더군요... http://sun...
김종춘
•
1998.09.21 23:19
3
COMMENTS
/
0
LIKES
죄송하지만 다시한번 지도 부탁합니다..
이진우
•
1999.05.26 04:51
그럼, RX 계산기 컴포넌트 소스를 구하는 방법은 없을까요? 정말 급하거든요..정말 정말로요.. 답변을 기...
이정욱
•
1998.09.22 03:47
아래 코드는 이상이 없습니다.. 아무래도 ActiveX를 잘못 Import하신것 같군요... Webrowser_V11객체를 ...
신인재
•
1999.05.26 06:58
Rx컴포넌트를 인스톨하면 인스톨된 디렉토리에 Unit Subdirectory에 RxCalc.pas 가 있습니다. 이진우...
김용식
•
1998.09.22 02:45
3
COMMENTS
/
0
LIKES
[Wise Installation] 설치시에 덮어써진 파일 처리...
이진우
•
1999.05.26 04:42
전체가 아니라도 계산기의 버튼 사이즈만 어떻게 고칠려고 하는데... 정말 방법이 없을 까요..
이정욱
•
1998.09.22 03:51
설치할 파일을 더하신 후 아래에 Detail이라는 버튼이 있습니다. 그곳에서 Replace Existing File항목에서...
이정욱
•
1999.05.26 11:39
없습니다... 이진우 wrote: > 전체가 아니라도 계산기의 버튼 사이즈만 어떻게 고칠려고 하는데... > ...
김종춘
•
1998.09.21 23:19
3
COMMENTS
/
0
LIKES
죄송하지만 다시한번 지도 부탁합니다..
이진우
•
1999.05.26 04:39
고정된 셀이든 안된 셀이든 상관없이 셀을 합칠려고 하는데 어떻게 해야 할지 잘모르겠어요. 아시는 분...
이정욱
•
1998.09.22 03:47
아래 코드는 이상이 없습니다.. 아무래도 ActiveX를 잘못 Import하신것 같군요... Webrowser_V11객체를 ...
이정욱
•
1999.05.26 11:45
셀을 합치실 수는 없습니다. 수동으로 합치려는 셀들의 스트링들을 만들어서 셀(Row든 Column이든)을 없애...
김 종춘
•
1998.09.20 01:55
3
COMMENTS
/
0
LIKES
OLE 이용에 대해서 지도부탁합니다..
이상석
•
1999.05.26 03:49
안녕하세요 이상석입니다. 데이타베이스 테이블에서 No1이라는 컬럼이 있는데 순번입니다. 폼이 생성될때 ...
이정욱
•
1998.09.21 22:33
쩝.. 아닌데요.. 다시한번 테스트를 해봤지만 잘되는군요... nilVariant 가 OleVriant형 맞죠? 김 종춘...
신인재
•
1999.05.26 07:09
K := DMtwt.TblExam.FieldByName('No1').Asstring;//.AsInteger; 여기부분이 좀 이상하군요 쿼리에서...
김용식
•
1998.09.21 18:13
3
COMMENTS
/
0
LIKES
[OnGuard] 덮어써진 파일처리
이상석
•
1999.05.26 03:13
안녕하세요, 시사영어사에 재직중에 있는 이상석입니다. 다름이 아니오라 DB 컬럼을 정하고 모두 INT형(MD...
이정욱
•
1998.09.21 22:23
온가드 컴포넌트의 문제가 아니구.. 설치프로그램의 문제네요. 설치프로그램을 작성하실 때 무엇을 사용했...
서형민
•
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...
김용식
•
1998.09.21 18:13
1
COMMENTS
/
0
LIKES
[OnGuard] 덮어써진 파일처리
이정욱
•
1998.09.21 22:23
온가드 컴포넌트의 문제가 아니구.. 설치프로그램의 문제네요. 설치프로그램을 작성하실 때 무엇을 사용했...
강경중
1999/05/26 07:17
Views
211
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.